Personalized avatar responsive to user physical state and context

ABSTRACT

Systems and methods are disclosed that facilitate providing guidance to a user during performance of a program or routine using a personalized avatar. In an aspect, a system includes a reception component configured to receive biochemical information about a physiological state or condition of a user, including information identifying a presence or a status of one or more biomarkers. The system further includes an analysis component configured to determine or infer one or more characteristics of the physiological state or condition of the user based on the information identifying the presence or the status of the one or more biomarkers, and a visualization component configured to adapt an appearance of an avatar presented to the user based on the one or more characteristics to reflect the one or more characteristics.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of and claims priority to each of,U.S. patent application Ser. No. 17/389,047 filed on Jul. 29, 2021 andentitled “PERSONALIZED AVATAR RESPONSIVE TO USER PHYSICAL STATE ANDCONTEXT,” which is a continuation of U.S. patent application Ser. No.15/978,625 filed on May 14, 2018 (now U.S. Pat. No. 11,107,579) andentitled “PERSONALIZED AVATAR RESPONSIVE TO USER PHYSICAL STATE ANDCONTEXT,” which is a continuation of U.S. patent application Ser. No.15/474,111 filed on Mar. 30, 2017 (now U.S. Pat. No. 9,997,082) andentitled “PERSONALIZED AVATAR RESPONSIVE TO USER PHYSICAL STATE ANDCONTEXT,” which is a continuation of U.S. patent application Ser. No.14/945,600, filed on Nov. 19, 2015 (now U.S. Pat. No. 9,652,992) andentitled “PERSONALIZED AVATAR RESPONSIVE TO USER PHYSICAL STATE ANDCONTEXT,” which is a continuation in-part of U.S. patent applicationSer. No. 14/518,844, filed Oct. 20, 2014 (now U.S. Pat. No. 9,501,942)and entitled, “PERSONALIZED AVATAR RESPONSIVE TO USER PHYSICAL STATE ANDCONTEXT,” which is a continuation in part of U.S. patent applicationSer. No. 14/049,981, filed on Oct. 9, 2013 (now U.S. Pat. No. 9,198,622)and entitled “VIRTUAL AVATAR USING BIOMETRIC FEEDBACK,” which claimspriority to U.S. Provisional Patent Application Ser. No. 61/711,510filed on Oct. 9, 2012, and entitled “VIRTUAL AVATAR USING BIOMETRICFEEDBACK.” The entireties of the aforementioned applications areincorporated by reference herein.

TECHNICAL FIELD

This application generally relates to systems and methods for generatinga personalized avatar that is responsive to a user's physical state andcontext.

BACKGROUND

The use of personal biometric monitoring equipment has increased theability of individuals to more easily and more accurately collect, trackand analyze data relating to the body's response to various triggers.For example, wearable sensors can monitor heart rate during an exerciseprogram and collect and record the heart rate data for further analysis.In addition, wearable movement sensors including fine tunedaccelerometers and gyroscopes combined with pattern analysis haveenabled the detection and analysis of user motion. The symbiosis of usermotion and biometric analysis facilitates an acute understanding of anindividual's physiological responses to various types of events andtriggers. As a result, various tools can be established that help tocontrol, improve or accommodate an individual's physical andphysiological activity.

BRIEF DESCRIPTION OF THE DRAWINGS

Numerous aspects, embodiments, objects and advantages of the presentinvention will be apparent upon consideration of the following detaileddescription, taken in conjunction with the accompanying drawings, inwhich like reference characters refer to like parts throughout, and inwhich:

FIG. 1 illustrates an example system architecture for manifestingresponses to physical and physiological activity information and imagedata about a user using a virtual avatar in accordance with variousaspects and embodiments described herein;

FIG. 2 provides an example avatar guidance system in accordance withvarious aspects and embodiments described herein;

FIG. 3 illustrates a flow diagram of a process for guiding or assistinga user with adhering to a program, routine or activity using an avatarin accordance with various aspects and embodiments described herein;

FIG. 4 illustrates an example fitness module for employment with anavatar guidance system in accordance with various aspects andembodiments described herein;

FIG. 5 illustrates an example user interface that facilitates receivinguser profile information in association with employment of an avatarguidance system for physical fitness purposes in accordance with variousaspects and embodiments described herein;

FIG. 6 presents an example user interface that facilitates designing acustom fitness routine in association with employment of an avatarguidance system for physical fitness purposes in accordance with variousaspects and embodiments described herein;

FIG. 7 presents an example user interface that presents a user with anavatar to facilitate guiding the user through a selected fitness routinein accordance with various aspects and embodiments described herein;

FIG. 8 illustrates another example fitness module for employment with anavatar guidance system in accordance with various aspects andembodiments described herein;

FIG. 9 illustrates an example program guide module for employment withan avatar guidance system in accordance with various aspects andembodiments described herein;

FIG. 10 presents a flow diagram of an example method for generating apersonalized avatar that is responsive to a user's physical state andcontext, in accordance with various aspects and embodiments describedherein;

FIG. 11 presents a flow diagram of another example method for generatinga personalized avatar that is responsive to a user's physical state andcontext, in accordance with various aspects and embodiments describedherein;

FIG. 12 presents a flow diagram of another example method for generatinga personalized avatar that is responsive to a user's physical state andcontext, in accordance with various aspects and embodiments describedherein;

FIG. 13 presents an example avatar visualization system that facilitatesvisualizing how the user will appear in response to adhering to a healthand fitness program in accordance with various aspects and embodimentsdescribed herein;

FIG. 14 presents example representations of an avatar that can bepresented to a user in accordance with various aspects and embodimentsdescribed herein.

FIG. 15 presents additional example representations of an avatar thatcan be presented to a user in accordance with various aspects andembodiments described herein.

FIG. 16 presents another example avatar visualization system thatfacilitates visualizing how the user will appear in response to adheringto a health and fitness program in accordance with various aspects andembodiments described herein;

FIG. 17 presents a flow diagram of an example method that facilitatesvisualizing how the user will appear in response to adhering to a healthand fitness program in accordance with various aspects and embodimentsdescribed herein;

FIG. 18 presents a flow diagram of another example method thatfacilitates visualizing how the user will appear in response to adheringto a health and fitness program in accordance with various aspects andembodiments described herein;

FIG. 19 presents a flow diagram of an example method for generating andpresenting an avatar having an appearance based on a currentphysical/physiological state of a user in accordance with aspects andembodiments described herein.

FIG. 20 is a schematic block diagram illustrating a suitable operatingenvironment in accordance with various aspects and embodiments.

FIG. 21 is a schematic block diagram of a sample-computing environmentin accordance with various aspects and embodiments.

DETAILED DESCRIPTION I—Overview

The innovation is described with reference to the drawings, wherein likereference numerals are used to refer to like elements throughout. In thefollowing description, for purposes of explanation, numerous specificdetails are set forth in order to provide a thorough understanding ofthis innovation. It may be evident, however, that the innovation can bepracticed without these specific details. In other instances, well-knownstructures and components are shown in block diagram form in order tofacilitate describing the innovation.

By way of introduction, the subject matter described in this disclosurerelates to manifesting responses to physical and physiological activityinformation and image data about a user using a virtual avatar presentedto the user. In computing technology, an avatar is a graphicalrepresentation of a character or personality provided to conveyinformation to a viewer. An avatar can take a two or three-dimensionalhuman form and be configured to speak and move as would a real person.The disclosed subject matter relates generally to using an avatar whosebehavior and/or appearance changes based in part on received physicaland physiological information and image data about a user.

In various embodiments, the physical and physiological information caninclude sensed physiological or biometric information about the user,motion data regarding movement of the user and image data correspondingto two or three dimensional image captures of the user. In an aspect,the physical and physiological information is captured via one or morebiometric or motion sensors attached to the user. In another aspect, thephysical and physiological activity data is captured via an imagecapture device (e.g., a camera, a video camera, a three-dimensionalimage capture device, a three-dimensional scanner, etc.). In anotheraspect, the physical and physiological activity data is captured via aremote sensing device employed by the user (e.g., an external medicalmonitoring device, a handheld sensing device, a remote, a balance pad,fitness device employed by the user, etc.).

For example depending on the types of biometric sensors employed,collected physiological data about a user can include but is not limitedto information regarding the user's: heart rate, body temperature,respiration, perspiration, blood pressure, calories burned, body fat,and body weight. When biosensors are employed, other physiological databased on chemical body reactions can be determined, such as glucoselevels, cortisol levels, blood alcohol levels, presence of drugresidues, presence of pathogens, presence of bacteria, etc. In addition,depending on the number and sophistication of motion sensors employed,collected movement data can range from the detection of general movementpattern based motions such as walking, running, sitting, jumping,climbing, etc., to even minute bodily motions such as strokes of afinger or the blinking of an eye. Further, image data can be captured ofa user to facilitate generation on two or three-dimensionalrepresentations of the user.

In various additional embodiments, the physiological information canalso include biochemical information regarding a biochemical state of auser, including information identifying presence and/or status of one ormore biomarkers. As used herein the term biomarker refers to ameasurable substance that serves as an indicator of a biological stateor condition of a living organism. Biomarkers are often measured andevaluated to examine normal biological processes, pathogenic processes,or pharmacologic responses to a therapeutic intervention. In accordancewith various aspects of the subject disclosure, biomarker information isemployed to identify characteristics about a user's physiological statethat can facilitate developing a health and fitness program for a useras well as, monitoring the user's adherence to the health and fitnessprogram, evaluating a user's response to the health and fitness program,and guiding or coaching the user throughout performance of the healthand fitness program.

For example, biomarker information can be used to determine a user'sability to perform various physical exercises, to evaluate a user'sresponse to dietary and physical stimulus, and to determine physical anddietary actions for the user to perform in order to achieve the goals ofthe health and fitness program. For instance, biomarkers that canfacilitate the various health and fitness related agendas above caninclude but are not limited to: folic acid, glucose, calcium, magnesium,creatine kinase, vitamin B12, vitamin D, ferritin, total cholesterol,hemoglobin, high density lipoprotein (HDL), low density lipoprotein(LDL), and triglycerides.

The biochemical information can be determined and received from varioussources. In an aspect, the biochemical information is determined viatesting analytes present in a user's blood, saliva, urine, tear fluid,sweat, or other suitable biological substance. In other aspects, thebiochemical information is determined via sensors configured to detectelectrical responses (e.g., a defibrillator) of the body or viaspectroscopic analysis devices. The biochemical information can bereceived as input from a user, a medical professional, directly fromlaboratory systems, or directly from a biosensing device. In someaspects, the biosensing device is worn by the user (e.g., externally oran as implanted device) and be configured to regularly providebiochemical information about the user (e.g., in real time).

In accordance with an embodiment, an avatar guidance system is providedthat analyzes received physical and physiological data about a user toevaluate adherence of the user to predefined routine or program. Inresponse to analysis of received physical and physiological data for auser, visual changes and/or verbal commands for manifestation by anavatar presented to the user are determined and effectuated. Inparticular, an avatar presented to the user is configured to exhibitvisual and/or audible behavioral reactions based on comparison ofmonitored data representing a metric of a user's physiology and/orphysical movement with respect to one or more reference metricsassociated with a routine or program the user has selected to follow.For example, in response to user physical and physiological activitydata falling outside a predefined range for a specific user behaviorassociated with performance of an action, task or routine, in order tocorrect the behavior of the user, the avatar can react in a way designedto reflect model techniques and behavior.

Visual and verbal avatar reactions can embody those which a real humanmay perform and can include but are not limited to changes in: motion ormovement, speech, tone of voice, level of sound/loudness, facialexpressions, body language, color, speed of movement, and range ofmotion. In an aspect, responses to user physical and physiologicalactivity data manifested by a virtual avatar as described herein aredetermined and effectuated in real-time (e.g., in response to receipt ofthe physical and physiological activity data). For example, a graphicaluser interface can be presented to the user that dynamically generatesthe avatar performing or exhibiting the determined responses. In anotheraspect, the avatar is rendered and presented to the user in the form ofa three dimensional hologram.

Existing systems, such as various gaming programs, have employed avatarsto mimic user motion data. For example, in response to a sensed jumpingmotion by a user, an avatar presented to the user may perform thejumping motion. However, rather than simply mimicking user motion, inaccordance with various aspect of the disclosed avatar guidance system,an avatar is configured to respond to a user based on evaluation of theuser's physical and physiological activity data with respect to apersonalized program developed for the user that the user strives tofollow. In particular, the avatar is configured to function as anintelligent being that has been specifically trained to observe, analyzeand respond to a user's physical and physiological activity data basedon a set of parameters defining at least one of: how the user should andshouldn't move, how the user's physiology should and shouldn't function,what actions or activities the user should and shouldn't perform, whenthe user should and shouldn't perform certain actions or activities, orhow the user should and shouldn't appear. This set of parameters can bespecifically tailored to govern user behavior with respect to apredetermined action, task or program.

For example, when performing a fitness routine that is associated withknown or model/reference movement and physiological parameters forperformance of the fitness routine by a model user, information can becollected about the user regarding the user's movement and physiology.The user's collected information is then compared to the known movementand physiological parameters to determine whether the user is adheringto the routine from an anatomical physical movement perspective and aphysiological perspective. In response to a determination that theuser's physical and physiological activity data deviates or does notdeviate from the known movement and physiological parameters, a responseis determined that is capable of being manifested by an avatar presentedto the user. This response can provide the user with guidance tofacilitate adherence to the fitness routine.

For instance, a response can include a determined physical action forthe user to perform to correct the deviation and this physical actioncan be demonstrated by the avatar. As one example, if a monitored useron a treadmill is slowing down when a routine followed by the user doesnot call for slowing down, an avatar configured to guide or coach theuser can change behavior to demonstrate a faster pace, therebyencouraging the user to speed up. The avatar can also provide verbalinstructions regarding performance of the physical action.

In another example, in response to a determination that the user'sphysical and physiological activity data deviates or does not deviatefrom the model or reference movement and physical parameters for thefitness routine, a response can be determined for manifestation by theavatar that provides criticism, motivation, praise, comparison, orfurther instruction. This response can encompass movement by the avatar,speech, facial expression, tone of voice, or any other real lifephysical human reaction that could be envisioned to facilitateexpression of criticism, motivation, praise, etc. In this way, as a userperforms a fitness routine, program, action or task, the user can feelas though a real person was observing the user in real-time andresponding in the form of personal intelligent coach that is an expertin evaluating and guiding performance of the specific routine, program,action or task.

In addition to comparison of received user physical and physiologicalactivity data to reference physical metrics for a specific routine,program, action or task, various aspects of the disclosed avatarguidance system provide for personalized analysis of user physical andphysiological activity data and personalized responses based on theanalysis for manifested by an avatar. In one aspect, the referencephysical and physiological activity metrics for the specific routine,program, action or task that is monitored for a user can be tailored orcalibrated to fit the user's personal physical capabilities, functionsand goals. For example, in furtherance to the physical fitness routineexample, metrics for a user's range of motion, motion speed, heart rate,blood pressure, etc., can be tailored and calibrated to fit the user'spersonal goals and account for the user's physical capabilities.

Further, responses to adherence or deviation from a routine, program,task or action (e.g., based on comparison to reference metrics orpersonally calibrated reference metrics) for manifestation by an avatarcan be tailored based on user preferences, demographics, mood, language,location, or context. For example, with respect to an avatar thatfunctions as a user's fitness trainer, an individual may providepreferences that note what type of exercises the user likes and doesn'tlike to perform or what type of coaching motivates the user (e.g., softencouraging technique over a more pushy demeaning approach). A responsedetermined for the avatar to perform can then be tailored to account forthe user's preferences. For instance, when the user is not achieving aparticular exercise included in the fitness routine, the avatar canprovide assurances that the user is “doing his best and that is all thatmatters,” as opposed to harping at the user and pushing the user “to getit right or get ten more minutes of abdominal work at the end of thesession.” In another example, an avatar that is configured to provideinstruction to a child can use different language and instructionaltechniques than an avatar configured to provide instruction to an adult.In yet another example, an avatar that is configured to provide guidanceto a user throughout the day to adhere to a diet plan can suggest foodoptions based on the user's context including the user's location,schedule and time of day.

Moreover, responses determined for manifestation by an avatar (based onreceived user physical and physiological activity data) to provide auser with guidance, instruction or support with respect to performing anaction, program, task or routine can be based on learned user behavior.For example, historical data regarding past reactions/responsesperformed by the user to avatar responses in association with same orsimilar routines, tasks or actions can be collected and analyzed usingvarious machine learning techniques to determine what types of avatarresponses work and don't work for the user. In another example, traits,habits and abilities of the user can be learned over time and employedto tailor avatar responses. For instance, when suggesting a new exerciseto transition to when a user is not achieving a previously suggestedexercise, the avatar can select an exercise that the user is known toperform well to boost the user's spirit. In another example, when a useris known to stop at a fast food restaurant on Elm street whenexperiencing high stress levels on the way home from work, an avatardesigned to help the user adhere to a diet program can warn the userthat the user is likely to perform this mistake and suggest an alternateroute and food option for the user.

The subject techniques for providing a user with guidance, instructionor support with respect to performing an action, program, task orroutine via a virtual avatar based in part on monitored user physicaland physiological activity data can have a variety of applications. Inone aspect, the disclosed techniques are tailored to facilitate guidinga user through a physical fitness routine or program, such as a personaltraining session, a physical therapy program or any other physicalactivity that may require an instructor, coach, teacher, therapist,trainer, etc. Some examples are ergonometrics, dancing, yoga, zumba, andmartial arts. For fitness applications, an avatar can play the role of avirtual instructor, coach, teacher, physical therapist, or personaltrainer. During performance of a fitness routine, a user's physiologicaland movement data is collected and compared to reference physical andphysiological activity metrics know for the specific fitness routine inview of personal information for the user (e.g., health restrictions,preferences, goals, etc.) to determine whether an avatar response iswarranted and if so, what the avatar response should be (e.g., aspecific verbal and/or visual command). After an avatar response isdetermined, the avatar displayed to the user performs the response.

In another aspect, the disclosed techniques can facilitate guiding auser with adherence to a diet program, a health program, a stressreduction program, a schedule and virtually any type of program that canbe monitored and adapted based at least in part on physiologicalcharacteristics/changes of the user and/or movement/motion of the user.Regardless of the application of the disclosed avatar guidance system,by employing a virtual avatar, instruction and information provided toguide or coach a user through a task or program is presented to the userby virtual human exhibiting real life human visual and audible responsesin the manner in which a personalized coach, therapist, assistant,friend, expert, doctor, etc. with particular insight about the userwould respond. Accordingly, the user will feel as though a real personwas by his or her side every step of the way throughout the program oractivity the user is striving to perform. In addition, this ‘realperson’ embodied via an avatar will be an expert at evaluating not onlyadherence to a specific program at hand, but a personalized guide thatknows just how to tailor evaluation of adherence to the specific programfor the user and how to tailor responses based on the evaluation tofacilitate the user's adherence to the specific program at hand.

In accordance with another embodiment, systems and techniques aredisclosed that provide for visualizing physical changes in a user basedon performance or predicted performance of a fitness or diet program. Inparticular, an avatar visualization system is provided that isconfigured to receive or generate a visual replica of a user as the usercurrently appears. This visual replica can be embodied as an avatarpresented to the user. As the user's appearance changes over the courseof performance of a health and fitness program, the appearance of theavatar can also change to provide a mirrored visualization of thechanges in the user. For example, each new day of the program, theappearance of the user can be evaluated, captured and imparted to theavatar. Thus in essence, the user's avatar can resemble a mirror imageof himself over the course of a program.

The avatar visualization system is further configured to generate avisual representation of the user that is a prediction of how the userwill appear at a future point in time based on performance of a healthand fitness program by the user. In particular, the avatar visualizationsystem can generate a visual representation or replica (e.g., an avatar)of a user based on currently received appearance information for theuser, currently received physical and physiological activity data forthe user (e.g., physiological data and/or movement data), and knownhealth information for the user (e.g., physical measurements, physicalconditions, physical capabilities, etc.). For example, the user canselect, (and/or design, or otherwise be assigned) a specific health andfitness program for performance. The user can further be provided with avisual representation that demonstrates how the user will predicativelylook after performance/completion of the program if the user adheres tothe requirements of the program. In addition, the user can selectvarious time points in the program (e.g., after week 1, after week 2,after week 3, etc.) and the avatar visualization system can generate avisual representation of the user that demonstrates how the user willpredicatively look at the respective time points if the user adheres tothe requirements of the program.

This avatar visualization system allows a user to dynamically pick andchoose different health and fitness programs and/or change differentvariables of a health and fitness program and see how the user wouldappear in the future based on the selected health and fitness programand/or the different variables. Accordingly, a user can select a healthand fitness program that will cause the user to achieve an optimallydesired appearance. For example, as the user selects different healthand fitness programs and/or can changes variables of a selected healthand fitness program, the avatar visualization system can dynamicallyadapt the appearance of an avatar presented to the user that correspondsto a predicted visualization of how the user will appear based oncompletion and adherence to the different health and fitness or thehealth and fitness program with the respectively chosen variables. As aresult, the user can select a specific health and fitness program basedon how it will affect the user's appearance.

II—System Architecture

Referring now to the drawings, with reference initially to FIG. 1,presented is a diagram of an example architecture 100 for systems thatfacilitates manifesting responses to physical and physiological activitydata about a user using a virtual avatar in accordance with variousaspects and embodiments described herein. System architecture 100 can beemployed in association with the disclosed avatar guidance system 200discussed in Section III and the disclosed avatar visualization systems1300 and 1400 discussed in section IV. Aspects of systems, apparatusesor processes explained in this disclosure can constitutemachine-executable components embodied within machine(s), e.g., embodiedin one or more computer readable mediums (or media) associated with oneor more machines. Such components, when executed by the one or moremachines, e.g., computer(s), computing device(s), virtual machine(s),etc. can cause the machine(s) to perform the operations described.

System 100 includes a person/user 102 and a client device 106 configuredto receive and/or capture physical and physiological activity data(e.g., physiological/biometric data, motion data, image data, etc.)about the user 102. In an aspect, one or more sensor devices 104 can beworn or otherwise attached to the user 102 to capture the physical andphysiological data and transmit the captured physical and physiologicalactivity data to client device 106 (e.g., in real-time or substantiallyreal-time). For example, the one or more sensor devices 104 can includebiometric sensors configured to detect information regarding at leastone of: heart rate (e.g., via a heart monitor device), body temperature(e.g., via a thermometer), respiration, perspiration, blood pressure,electrical activity of the heart or brain, calories burned, or body fatand body weight. In another example, the one or more sensor devices 104can include biosensors configured to detect an array of additionalbiomarkers for a user, including but not limited information regarding:folic acid, calcium, magnesium, creatine kinase, vitamin B12, vitamin D,ferritin, total cholesterol, hemoglobin, HDL, LDL, triglycerides, fattyacids, insulin, hemoglobin, hormones (e.g., thyroid hormones(thyroid-stimulating hormone (TSH), metabolic hormones, reproductivehormones, etc.), liver enzymes, electrolytes (e.g., sodium, potassium,chloride, etc.), platelets, white blood cells, red blood cells, iron,etc.

In an aspect, the one or more sensor devices 104 can include wearableand implanted medical devices/sensors configured to detect andwirelessly communicate a wide array of biometric information about theuser 102 to client device 106. Such biosensing devices can provide forreal-time diagnostic testing and reporting. For instance, the one ormore sensor devices 104 can include blood-sampling sensors (e.g., asglucose meters), tissue-embedded sensors (e.g., pacemakers anddefibrillators), ingestibles embedded in pills that dissolve, epidermalsensors (e.g., patches and digital tattoos), wearables embedded inclothing or accessories, and external sensors (e.g., blood-pressurecuffs and pulse oximeters).

For example, biosensor device 104 ¹ can include a biosensing contactlens configured to be worn in the user's eye and sense/detect variousbiomarkers in tear fluid. The contact lens can further be configured towirelessly transmit information regarding presence and/or concentrationof the detected biomarkers to an external device (e.g., client device106 and/or avatar server 116). In another example, biosensor device 104² can include an implantable cardioverter-defibrillator (ICD) configuredto perform conventional functions of an ICD as well as additionalsensing of biomarkers in bodily fluids. In yet another example,biosensor device 104 ³ can include a urinary catheter configured to beworn by the user to facilitate urinary functions while also beingconfigured to detect biomarkers in urine and wirelessly transmitinformation regarding the biomarkers to an external device.

In yet another example, biosensor device 104 ⁴ can include ablood-testing device that is implanted into the body (e.g., under theskin) or worn in the form of a patch and configured to detectbiochemical information regarding at least one of: glucose level,cortisol level, potassium level, blood oxygen level, blood alcohollevel, inflammation, nitric oxide level, drug levels/residues present inthe body, pathogens present in the body, or bacteria present in thebody. In another example, the biosensors can be configured to detect anarray of additional biomarkers for the user, including but not limitedinformation regarding: folic acid, calcium, magnesium, creatine kinase,vitamin B12, vitamin D, ferritin, total cholesterol, hemoglobin, HDL,LDL, triglycerides, fatty acids, insulin, hemoglobin, hormones (e.g.,thyroid hormones (thyroid-stimulating hormone (TSH), metabolic hormones,reproductive hormones, etc.), liver enzymes, electrolytes (e.g., sodium,potassium, chloride, etc.), platelets, white blood cells, red bloodcells, iron, etc. For example, the biosensor device 104 ⁴ can beimplanted under the skin and analyze concentrations of substances in theblood. The implantable blood-testing device can further wirelesslytransmit information regarding the tested substances to an externaldevice (e.g., client device 106).

I should be appreciated that the above described biosensing devices aremerely exemplary and that other existing and future implantable/wearabledevices capable of detecting biometric (e.g., biochemical information)about a user and wirelessly transmitting the biometric to an externaldevice (e.g., client device 106) are within the scope of the subjectdisclosure.

In addition to physiological/biometric data, sensor devices 104 canfacilitate capture and reporting of user movement or motioncorresponding to speed, direction, and orientation of the user a wholeand/or individual body parts of the user. For example, the one or moresensor devices 104 can include motion sensors such as an accelerometer,a gyroscope or an inertial measurement unit (IMU). Thus captured motiondata can include information identifying acceleration,rotation/orientation, and/or velocity of the motion sensor device 104itself, facilitating determination of motion and movement data of thebody and/or body parts to which the motion sensor are attached. Forexample, processing of raw motion data (e.g., by the senor itself or thedevice to which the raw motion data is communicated, such as clientdevice 106 and/or avatar server 116) can include pattern analysis todetermine or infer types of motion represented by the motion data and/orcharacteristics associated with the types of motion (e.g., intensity,duration, range, speed, etc.). For example, using pattern recognition,patterns in the motion data can be correlated to know patterns fordifferent types of motion, such as walking, running, climbing, jumping,falling, cycling, turning, etc. Motions sensors such as accelerometerscan also be used in detection for Parkinson's disease. Patients ofParkinson's disease are known to have involuntary shaking. For thosehaving mild symptom, shaking might not be significant. Since anaccelerometer is sensitive enough to detect even mild shaking, when itis placed on a patient's arm while he/she is intended to hold the arm instill, the accelerometer could report involuntary shaking.

In another aspect, physical and physiological activity data regardingmovements/motions performed by user 102 can include information capturedby an intelligent fitness device 118 employed by the user in associationwith performance of a fitness routine or exercise. For example, somefitness exercises can involve usage of fitness equipment, such asexercise machines (e.g., a treadmill, a bicycle, a rowing machine, aweight machine, a balance board, etc.) or accessories (e.g., freeweights, weighted balls, hula hoops, yoga blocks, bands, etc.). In anaspect, this fitness equipment can include a sensor device(s) configuredto track and record user movements and motions and report (e.g., viawireless or wired connections) these movements and motions to clientdevice 106 (and/or avatar server 116). For example, sensors andmonitoring devices included in a treadmill can track user speed andincline. In another example, sensors included in various weight machinesor free weights can detect and report number of reps, intensity, weightused, range of motion etc. Still in yet another example, a balance boardor pressure sensitive mat can detect user movement performed whilestanding on the matt based on pressure and weight distribution.

In some implementations, intelligent fitness device 118 can include anexternal biometric sensing device configured to capture biochemicalinformation for a user. For example, intelligent fitness device 118 caninclude a pressure cuff or pulse oximeter device. In another example,intelligent fitness device 118 can include a handled spectroscopicdevice configured to employ spectroscopic techniques to detect variousbiomarkers when externally applied to a user's skin, including but notlimited to, antioxidant biomarkers, cortisol, cytochrome c-Oxidase,cholesterol and blood alcohol.

In additional implementations, physical data about a user correspondingto movement/motion and appearance of the user 102 can be captured byclient device 106. For example, client device 106 can include a visualcapture device 110 such as a still image camera, a video camera, or athree dimensional camera/scanner configured to capture image and/orvideo data of the user 102. According to this example, client device 106can collect video and still images of the user 102 as the user performsan activity, task, or routine (e.g., a workout routine). The image datacan be analyzed using pattern recognition to determine whether theuser's movement corresponds to model movement metrics for the activity,task or routine. For instance, while performing a fitness routine suchas a yoga or dance routine, image data captured by visual capture device110 can be processed and analyzed (e.g., in real-time) to determinewhether the user is executing the correct movements/poses and usingproper form.

In another aspect, image data for a user captured by visual capturedevice 110 can be analyzed to determine physical measurements metricsfor the users, such as height, weight, body fat, dimension of the user'swaist, hips, shoulders, biceps, etc. As a user's body changes over time(e.g., in response to performance of an exercise or diet program),changes to physical measurement parameters of the user can be tracked,recorded, and monitored. In addition, a visual replica (e.g., a twodimensional image or three dimensional image where a three dimensionalimaging device is employed) of the user as the user actually appears(e.g., standing still or during performance of a fitness routine),should appear (e.g., based on a model) or may predicatively appear inresponse to advancement in a fitness/diet program, can also begenerated. In an aspect, an avatar that is generated and presented tothe user (e.g., via rendering component 108 and/or avatar platform 114)can be modeled to replicate the user's physical appearance based on thecaptured image data.

In another aspect, client device 106 can include a sensor module 112that can aid with detection of user motion and motion data usinginfrared or visible light detection devices. In yet another aspect,client device 106 can include a wearable device and sensor module 112can include biometric and/or motion sensors configured to capture thevarious physical and physiological activity metrics described withrespect to sensor devices 104.

Client device 106 also includes rendering component 108 to generate andpresent an avatar to the user 102. For example, rendering component 108can be configured to generate a graphical user interface that includesthe avatar and rendered via a display screen of the client device 106.In another example, rendering component 108 can be configured togenerate an avatar as a hologram that is presented to the user 102. Inan aspect, an avatar generated/presented via rendering component 108perform various visual and/or audible actions based at least in part onanalysis of the physical and physiological activity data as describedherein. In another aspect, an avatar generate/presented to the user viarendering component is configured to provide a visual replica of theuser.

In an aspect, client device 106 can include avatar platform 114 toprovide for processing and analyzing of user's physical andphysiological activity data to facilitate determination andmanifestation of avatar reactions and appearances to the data inaccordance with aspects described herein. In another aspect, some or allof the processing and analysis of the physical and physiologicalactivity data is performed by a remote avatar server 116. According tothis aspect, avatar server 116 can include an avatar platform 114 andclient device 106 can communicate received and/or captured physical andphysiological activity data to the avatar server 116 for processingthereof. The avatar server 116 can further communicate control commands,determined based on the processed physical and physiological activitydata, that control the various visual and/or audible actions of theavatar generated and displayed at client device 106 by renderingcomponent 108. In another aspect, various processing and analysisfunctions associated with avatar platform 114 can be divided betweenclient device 106 and avatar server 116. The various features andfunctions of avatar platform 114 are described in greater detail infrawith respect to FIGS. 2, 13 and 14.

System 100 can include one or more networks to facilitateconnection/communication between the one or more sensor devices 104,intelligent fitness device 118, client device 106, and/or avatar server114. These networks can include wired and wireless networks, includingbut not limited to, a personal area network (PAN), a local area network(LAN) a cellular network, or a wide area network (WAD, e.g., theInternet). For example, a sensor device 104 can communicate with clientdevice 106 using a PAN (e.g., via short range radio communications suchas Bluetooth™ near field communication (NFC), etc.). In another example,a sensor device 104 and/or client device 106 can communicate with avatarserver 114 (and vice versa) using virtually any desired wired orwireless technology, including, for example, cellular, WAN, wirelessfidelity (Wi-Fi), Wi-Max, WLAN, and etc. In addition, the one or moresensor devices 104, client device 106, and/or avatar server 114 caninclude memory that stores computer executable components and aprocessor that executes the computer executable components stored in thememory, examples of which can be found with reference to FIG. 20.

Client device 106 can include any suitable computing device that canfacilitate generating and presenting an avatar to a user 102 that isreactive to user input including physical and physiological activitydata generated or provided by the user 102. For example, client device106 can include a desktop computer, a laptop computer, a television, anInternet enabled television, a mobile phone, a smartphone, a tabletpersonal computer (PC), a personal digital assistant PDA, or a wearabledevice. It should be appreciated that the size of client device 106 withrespect to user 102 as drawn in FIG. 1 is not intended to provide ascaled relationship between one another. For instance, in an aspect,client device 106 can include a small device configured to be worn onthe user's wrist, a device configured to be worn as a headband orglasses, or an 80 inch television. As used in this disclosure, the terms“content consumer” or “user” refer to a person, entity, system, orcombination thereof that employs system 100 (or additional systemsdescribed in this disclosure) using a client device 118.

III—Example Avatar Guidance System

In one or more aspects, an avatar guidance system is provided thatincludes a reception component a reception component configured toreceive physical and physiological activity information about a userduring performance of a routine or program, and an analysis componentconfigured to analyze the physical and physiological activityinformation based on reference physical and physiological activitymetrics for the routine or the program to determine whether, how and towhat degree the user deviates from requirements of the routine or theprogram. The system further includes a reaction component configured todetermine a response for an avatar displayed to the user based on adetermination regarding whether, how and to what degree the userdeviates from the requirements of the routine or the program, and anavatar control component configured to initiate manifestation of theresponse by the avatar as displayed to the user during the performanceof the routine or the program.

In another aspect, a method is disclosed that includes receivinginformation about a user during performance of a physical routine,wherein the physical information includes physiological information andanatomical movement information. The method further includes determiningwhether and how the user deviates from requirements of the physicalroutine based on comparison of the information to reference physical andphysiological activity metrics for the physical routine, and determininga response for an performance by avatar displayed to the user based onand in response to a determination regarding whether and how the userdeviates from the requirements of the physical routine, wherein theresponse is configured to facilitate adherence to the requirements ofthe physical routine. The method further includes initiatingmanifestation of the response, in response to the determination thereof,by the avatar as displayed to the user during the performance of thephysical routine.

Still in yet another aspect, a system is provided that includes aninterface component configured to generate a graphical user interfacecomprising an avatar configured to react to a user during performance ofa physical routine by the user in response to a determination that theuser deviates from a physical requirement of the routine based onanalysis of physical and physiological activity data about the usergenerated during performance of the physical routine. The system furtherincludes an avatar generation component configured to cause the avatarto perform a reaction that provides instruction to correct the manner inwhich the user deviates from the physical routine in response toreception of control commands defining the reaction, wherein thereaction comprises at least one of speech or movement; and a renderingcomponent configured display the graphical user interface with theavatar performing the reaction.

FIG. 2 presents an example avatar guidance system 200 that facilitatesguiding or assisting a user with adhering to a program, routine oractivity using an avatar in accordance with various aspects andembodiments described herein. System 200 can include same or similarfeatures and functionalities as system 100. In an aspect, system 200employs the architecture of system 100, including one or more of thevarious components/devices of system 100, wherein avatar guidanceplatform 202 corresponds to avatar platform 114. Avatar guidanceplatform 202 can thus include same or similar features andfunctionalities as avatar platform 114. Repetitive description of likeelements employed in respective embodiments of systems and interfacesdescribed herein are omitted for sake of brevity.

Generally, avatar guidance platform 202 can include memory 218 thatstores computer executable components and processor 228 that executesthe computer executable components stored in the memory, examples ofwhich can be found with reference to FIG. 20. It is to be appreciatedthat although avatar guidance platform 202 is illustrated as being astandalone component, such implementation is not so limited. Forexample, avatar guidance platform 202 can be located at a client device(e.g., client device 106), a remote server (e.g., avatar server 116) orthe cloud. In another aspect, one or more components of avatar guidanceplatform 202 can be located at both the client device and the remoteserver. Still in yet another aspect, the components of avatar guidanceplatform can be distributed between the client and the server.

Avatar guidance system 200 can include avatar guidance platform 202,input 234, rendering component 236 and one or more remotesources/systems 238. Avatar guidance platform 202 is configured tofacilitate guiding or assisting a user in association with performing aroutine, activity or program using an avatar that is responsive tovarious input 234 associated with performance of the program, routine oractivity. The specific routine, activity or program can vary.

For example, avatar guidance system 200 can be used to facilitateguiding a user in association with performance of a specific fitnessactivity or routine (e.g., a single one hour workout, a yoga class, arunning race, etc.). In another example, the activity could includeperformance of a surgical procedure, performance of a musicalinstrument, driving a car, or other suitable human activities requiringphysical and/or mental aptitude for which guidance could be provided.

Many suitable routines, activities and programs capable of beingmonitored by avatar guidance platform 202 can involve those in which aphysical trainer, teacher or demonstrator could potentially provide theuser assistance/guidance with performing the routine or activity. Forexample, the routine or activity can include a physical exercise orroutine where a coach or trainer may provide instruction and/orevaluation, such as performance of a physical therapy session, a plannedworkout, an aerobics routine, a dance routine, a yoga routine, track andfield training, or a sports activity (e.g., football, baseball, soccer,basketball, tennis, golf, fencing, gymnastics, skiing, karate, horsebackriding, juggling, rock climbing, diving, etc.). In another example, theroutine or activity can include any activity that involves some form ofphysical movement that could be demonstrated and evaluated by anotherperson, such as cooking a dish, building something, creating a piece ofartwork (e.g., painting, sculpting), performing a medical operation,playing an instrument, etc.

Avatar guidance platform 202 is also configured to evaluate programsthat involve user performance of various physical or physiologicalactions over a period of time to achieve a goal. For example, theprogram can include a health and/or fitness program, a dietary program,a drug rehabilitation program, a stress reduction program, or anaddiction recovery program. Avatar guidance platform 202 can providemonitoring and guidance in association with adherence to the programover the course of the program while tracking the user's progressthroughout the program based in part on physical, physiological, image,motion, context and user profile data. The term program is used hereinto differentiate from a routine or activity with respect to the durationin that a program is generally longer in duration than a single routineor activity. The period of time can vary. For example, the period oftime can include a course of a few hours, a few days, a few weeks, a fewmonths, etc.

In an aspect, an avatar configured to guide a user through a program canfunction as the user's personal coach, trainer, conscience, doctor,therapist, advisor, friend, family member etc., or any other suitablepersona, that can function to guide or coach the user through theprogram. In an aspect, this avatar can essentially know what the user isdoing at all times with respect to the program (e.g., throughout theday, week, month, etc., or whenever system 200 is activated andaccessible to the user).

For example, with respect to a diet/fitness program, as user physicaland physiological input and/or image data is received, an avatar canrespond to physical and physiological states of the user, monitor whatthe user eats and when, monitor how many calories the userconsumes/burns, instruct the user what to eat and when, monitor when theuser exercises, determine and instruct what exercises the user shouldperform, and assist the user with making intelligent choices in linewith the diet/exercise program throughout the day. In another example,an avatar can function as a health guide for a user to facilitateimproving the improving the user's overall health. For instance, theavatar can improve a user's health condition (e.g., a user sufferingfrom an illness or ailment) by determining when the user should andshouldn't perform certain physical activities, when the user should takecertain medications, when the user should eat certain foods, when theuser should seek emergency health services, when the user is becomingfatigued or sick, when the user's health is improving, etc., andresponding accordingly with visual and/or audible reactions. In anotherexample, an avatar can assist a user with overcoming an addiction, suchas a drug addiction or alcohol addiction, by monitoring the user'sphysical/physiological state throughout the day and providing the userwith guidance and reactions in line with adhering to a rehab program.Still in yet another example, a user can set up a personal schedule thatcan involve activities the user should perform and when and avatarguidance platform 202 can monitor and facilitate adherence to theschedule.

Based on received input 234 for a user, (e.g., physiological data,motion data, image data, profile data, and/or context data)determinations and inferences can be made regarding adherence of theuser to the program, routine or activity and mechanisms to facilitateadherence of the program, routine or activity. These mechanisms can bemanifested by an avatar presented to the user at the time of need. Forexample, avatar guidance platform 202 can determine, based on receivedinput 234 and predefined requirements/rules for a program, routine oractivity, whether, how and to what degree a user is deviating from therequirements/rules of the program. In response to a determination thatthe user is and/or is likely to deviate from the requirements of theprogram, routine or activity, avatar guidance platform 202 can determinea mechanism for correcting the user's behavior and this mechanism can becommunicated to the user via an avatar presented to the user. Forexample, when a user is becoming unproductive at his work desk andfatigued based on input indicating the user's location, the user'smotion activity, the user's brain activity, the user's glucose levels,and the user's cortisol level, the avatar can notify the user andsuggest that the user get up and take a walk and eat a snack.

In various implementations, the input 234 includes physical data (e.g.,motion and/or image data) and physiological data (e.g.,biometric/biochemical information) about the user. Thephysical/physiological input can be received before, during, and/orafter performance of the program, routine or activity by the user. Insome aspects, the input 234 is received in real-time during performanceof the routine, program or activity by the user. For example,biometric/biochemical information can be received about a user inreal-time during performance of a routine or activity from one or moreworn or implanted biosensor devices (e.g., devices 104) or an externalbiometric detection device (e.g., intelligent fitness device 118).Motion data can be received about a user in real-time during performanceof a routine or activity via one or more motion sensors device (e.g.,devices 104) worn by the user and/or remote motion sensing devices(e.g., intelligent fitness device 118).

In addition to physical and physiological data about a user, input 234can also include profile information for the user that defines variousknown characteristics of the user, including but not limited to, healthinformation, preferences, demographics, user schedule, and historicalinformation gathered about the user over the course of a monitoredprogram, routine or activity. Input 234 can also include contextualinformation associated performance of the program, routine or activity,such as a location of the user, information about the location (e.g., amap of the location, physical structures at the location, eventsoccurring at the location, etc.), weather information, information aboutother persons the user is located near and/or interacting with, andother information provided by the user during performance of theprogram, routine or activity (e.g., information about the user's currentmood or information about what the user is currently thinking/feeling).

In various embodiments, reception component 204 is configured to receiveinput 234 including physical and physiological input (e.g., biometricdata, biochemical data, motion data, and other physical information suchas height, weight, body fat percentage, etc.) about a user automaticallyfrom various sources including but not limited to: one or more sensorsattached to the user (e.g., sensors 104), an intelligent fitness deviceemployed by the user (e.g., intelligent fitness device 118), and/or anexternal device employed by the user, such as a visual capture device(e.g., visual capture device 110), a sensor module (e.g., sensor module112), or other physical data capture devices. In an aspect, raw physicaland physiological data and/or image data is received by receptioncomponent as it is captured. For example, sensors (e.g., sensors 104)worn by the user can send physical and physiological activity datadirected to reception component 204 in response to sensing thereby.Accordingly, physical and physiological activity data about the user canbe received and processed in real-time or substantially real-time.

In addition to physical and physiological input captured by variousworn, implanted and/or external devices, (e.g., devices 104 and 118),reception component 204 can receive physical and physiologicalinformation about a user from the user or another user associated withthe user (e.g., the user's physical therapist, the user's dietician, theuser's mom, etc.). For example, prior to beginning a particular program,routine, or activity, the user or the other user can provide avatarguidance platform 202 (e.g., via text or speech input) with profileinformation describing the user's health history as well as informationregarding the user's height, weight, body fat index, dietary habits,medications, supplements, etc. The user can also provide other types ofprofile information regarding the user's preferences, the user'sdemographics, etc.

In some embodiments, a user's profile information can include laboratoryresults (e.g., provided by the user or directly from a laboratoryreporting service) identifying presence and/or status of variousbiomarkers. For example, the laboratory results can include results froma blood test, urine test, tear fluid test, saliva text, sweat test,breath text, or other suitable biological test, performed by the user orat a medical testing laboratory. The biomarker information can includefor example, biochemical information regarding at least one of: glucoselevel, cortisol level, blood oxygen level, blood alcohol level,inflammation, nitric oxide level, drug levels/residues present in thebody, pathogens present in the body, or bacteria present in the body,folic acid, calcium, magnesium, creatine kinase, vitamin B12, vitamin D,ferritin, total cholesterol, hemoglobin, HDL, LDL, triglycerides, fattyacids, insulin, hemoglobin, hormones (e.g., thyroid hormones(thyroid-stimulating hormone (TSH), metabolic hormones, reproductivehormones, etc.), liver enzymes, electrolytes (e.g., sodium, potassium,chloride, etc.), platelets, white blood cells, red blood cells, iron,etc.

During performance of the program, routine or activity, a user can alsoprovide avatar guidance platform 202 with feedback and/or update his orher profile information. For example, the user can regularly, (e.g.,prior to beginning a workout, prior to eating, twice a day, once a day,once a week, etc.) perform biometric tests (e.g., using at home testingkits, mail in kits, home testing devices, etc.) to provide the avatarguidance platform 202 with updated profile information. The user canalso update his or her profile information with respect to healthhistory, preferences, demographics, etc.

In another aspect, reception component 204 can extract some input 234regarding a user's physical and physiological status,demographics/preferences, and current context from one or more remotesources 238 accessible to avatar guidance platform 202 via a network(e.g., the Internet) before, during and/or after performance of aroutine or program. For example, reception component 204 can access andimport health information for the user from the user's health careprovider or from a network based laboratory service. In another example,reception component 204 can gather a variety of information about theuser's preferences, demographics, social affiliations, mediapreferences, etc. from various network sources the user accesses oremploys (e.g., social networking sources, websites visited by the user,applications downloaded and employed by the user, articles and mediaaccessed by the user, etc.).

In addition, reception component 204 can receive information regarding auser's location using various known location determination techniques.For example, the user can wear a locating device (e.g., a locationtracking device, a global positioning system device, etc.) or a mobileclient device employed by the user can include systems for determining alocation of the mobile client. Location information can further bereported by these devices to reception component 204. Informationregarding positions of other known persons relative to the user can begathered in a similar manner (e.g., when such persons have authorizedand enabled tracking of their location). In an aspect, receptioncomponent can receive information related to a user's location and/orenvironment, (e.g., physical structures, information about the physicalstructures, activities in the environment, weather information, etc.),from various remote sources and/systems accessible to receptioncomponent 204 (e.g., map services, new services, merchant websites,etc.).

Avatar guidance platform 202 is configured to receive and process thesevarious inputs 234 about a user's physical/physiological state and alongwith various other personal and contextual information about the user tofacilitate guiding and assisting the user with performance of a specificprogram, routine or task via manifestation of responses based on theinput to the user through an avatar. In particular, the avatar isconfigured to function as an intelligent being that has beenspecifically trained to observe, analyze and respond to a user'sphysical and physiological data, profile information and contextinformation in association with performance of a specific program,routine or task, based on various rule based classification schemes forthe program, routine, or task, defining at least one of but not limitedto: what actions or activities the user should and shouldn't perform,how the user should and shouldn't move during performance of the actionsor activities, how the user's physiology should and shouldn't functionduring performance of the actions or activities, when the user shouldand shouldn't perform certain actions or activities, where the usershould and shouldn't perform certain actions or activities, or how theuser should and shouldn't appear. In some aspects, avatar guidanceplatform 202 can even monitor interaction and association of the userwith other people with respect to performance of actions and activitiesof defined in a program, routine or task. For example, avatar guidanceplatform 202 can receive information indicating the user is locatedwithin X feet of an identified person and determine whether the user isauthorized to interact with the identified person (e.g., at all or underthe current context) based on a defined program the user is following.

Based on analysis of received input 234 with respect to a definedprogram, routine or task the user is performing, reactions aredetermined for manifestation by an avatar presented to the user. Thesereactions can include visual and/or audible (e.g., speech responses)responses that provide instruction, guidance, motivation, and evaluationfor the user with respect to the user's performance (or non-performance)of the program, routine or task. The visual and verbal avatar reactionscan embody those which a real human may perform to provide theinstruction, guidance, motivation, etc. and can include but are notlimited to changes in: motion or movement, speech, tone of voice, levelof sound/loudness, facial expressions, body language, color, speed ofmovement, and range of motion.

In an aspect, the avatar is generated and presented to the user via arendering component 236 located at a client device (e.g., client device106). Rendering component 236 can include same or similar features andfunctionality as rendering component 108. Rendering component 236 caninclude suitable hardware (e.g., a display screen, a hologram generationdevice, etc.) and software (e.g., software for generating a GUI and/orsoftware for accessing and rendering network based interface, such abrowser) to accomplish generating and presenting an avatar that performsthe responses determined by avatar guidance platform 202 to facilitateguiding the user with adhering to the program, routine or activity beingmonitored.

In various embodiments, the potential reactions for performance by anavatar in association with a specific program, routine or activity arepredefined and stored in memory 218. In other aspects, reactions forperformance by an avatar can be dynamically determined based on a set ofresponse rules for the specific program, routine or activity. Theseresponse rules can account for user physical and physiological activitydata as well as user profile information and user context information.Avatar guidance platform 202 can employ various machine based learningtechniques to infer a suitable reaction for an avatar based on thevarious inputs and information accessible to avatar guidance platform202.

Processing module 210 is configured to process various input data 234received to facilitate guiding and assisting the user with performanceof a specific program, routine or task via manifestation of responsesbased on the input to the user through an avatar. Based on analysis ofreceived input 234 with respect to a defined program, routine or taskthe user is performing, processing module 210 determines or infersreactions for manifestation by an avatar presented to the user. In anaspect, processing module 204 process user physical and physiologicalinformation and context information as it is received and in view ofuser profile information to determine real-time responses to useractions (or non-actions) during a program, routine, or activity.

Processing module 210 can include analysis component 212, reactioncomponent 214 and inference component 216. In an aspect, analysiscomponent 212 is configured to analyze raw physical and physiologicaldata for a user to determine or infer feature values corresponding towhat the raw physical and physiological data represents. This analysiscan occur in real-time or substantially real-time (e.g., as the physicaland physiological activity data is generated and received, such as byclient device 106 and/or avatar server 116). As described above, thisraw physical and physiological data can include biometric data,biochemical data, motion or movement data, and image data.

For example, biometric data could include information corresponding to auser's heart rate, blood pressure, blood oxygen level, and temperature.In another example, biochemical information can include informationregarding presence and/or concentration of various biomarkers such asbut not limited to: glucose, cortisol level, blood alcohol, biochemicalinformation regarding at least one of: glucose level, cortisol level,blood oxygen level, blood alcohol level, inflammation, nitric oxidelevel, drug levels/residues present in the body, pathogens present inthe body, or bacteria present in the body. In another example, thebiosensors can be configured to detect an array of additional biomarkersfor the user, including but not limited information regarding: folicacid, calcium, magnesium, creatine kinase, vitamin B12, vitamin D,ferritin, total cholesterol, hemoglobin, HDL, LDL, triglycerides, fattyacids, insulin, hemoglobin, hormones (e.g., thyroid hormones (TSH),metabolic hormones, reproductive hormones, etc.), liver enzymes,electrolytes (e.g., sodium, potassium, chloride, etc.), platelets, whiteblood cells, red blood cells, iron, etc.

In an aspect, received biometric data is received in a processed form toindicate the feature value it represents (e.g., heart rate, bloodpressure, blood oxygen level, temperature, glucose level, cortisollevel, blood alcohol level, etc.). For example, analysis component canreceive processed data identifying a user's blood oxygen level based onreceived results from a pulse oximeter. In some aspects however,analysis component 212 can interpret raw signals from various sensors todetermine feature values for the biometric data.

In various embodiments, analysis component 212 is configured todetermine or infer one or more characteristics of a physiological stateor condition of a user based on received biochemical information about abiochemical state of the user, including information identifying apresence or a status of one or more biomarkers. For example, based ondetected presence of a particular biomarker, analysis component 212 candetermine a known medical condition or disease exhibited by the user. Inanother example, analysis component 212 can determine whether and towhat degree levels of the respective biomarkers are abnormal (e.g., withrespect to predefined values or ranges for normal vs. abnormal levels).Analysis component 212 can further determine or infer known conditionsor diseases of the body that are attributed to the abnormal levels ofthe respective biomarkers.

In another embodiment, based on the information identifying the presenceand/or status/level of various biomarkers, analysis component 212 candetermine one or more characteristics associated with a state of a humanbody system of the user, such as whether the body system is in a healthystate or an unhealthy state (and varying degrees between severelyunhealthy or extremely healthy) and why, whether the system isfunctioning properly or improperly and why, whether the system isfunctioning at a desired performance level (e.g., in association with aparticular physical activity), etc. These human body systems include atleast one of: the integumentary system, the skeletal system, the nervoussystem, the cardiovascular system, the endocrine system, the muscularsystem, the lymphatic system, the respiratory system, the urinarysystem, the excretory system, the reproductive system, the digestivesystem, and the immune system.

For example, the cardiovascular system includes the heart and bloodvessels, and is responsible for transporting oxygen, nutrients,hormones, and waste products throughout the body. A healthycardiovascular system ensures a good balance of nutrients and optimalbrain and body function. In an aspect, analysis component 212 candetermine levels of respective biomarkers related to a user's lipidpanel (e.g., HDL, LDL, triglycerides, non-HDL cholesterol, etc.).Analysis component 212 can further determine whether the levels arewithin an acceptable range and/or whether the levels are indicative of aparticular disease of physiological condition.

Analysis component 212 can also determine a general health status of theuser's cardiovascular system based on the user's lipid panel. Forexample, analysis component 212 can determine a degree of risk the userhas for cardiovascular disease based on detected levels of HDL, LDL,triglycerides, non-HDL cholesterol, etc. Higher levels of LDLcholesterol can result in increased amounts of plaque in the bloodvessels, which can obstruct blood and oxygen flow to vital organs. Byreducing those deeper LDL numbers, one can reduce the risk of a heartattack and stroke. Similarly, by increasing ones HDL, one can reduce therisk of developing cardiovascular disease. Analysis component 212 canalso determine the status of a user's heart health based on levels offatty acid biomarkers (e.g., omega-3 fatty acids and omega-6 fattyacids).

In another example, based on biomarker levels for C-reactive protein(hs-CRP), Lipoprotein-associated phospholipase (Lp-PLA2), homocysteine,and fibrinogep, analysis component 212 can determine a degree ofinflammation experienced by a user. Inflammation is a natural reactionto stress or injury. In addition to facilitating injuryrecovery/prevention in the short term, by regularly monitoring a degreeof inflammation experienced by a user, one can regulate development ofchronic diseases such as cardiovascular disease, cancer, diabetes,dementia, and osteoporosis.

Analysis component 212 can further determine characteristics about auser's metabolic health/state based on various known biomarkers.Metabolic monitoring is the periodic recording of metabolic markers thatgive information on specific metabolic pathways. Diabetes mellitus,obesity and intense physical activity are a few examples where closemetabolic monitoring is necessary and beneficial. Metabolism is thebody's way of chemically processing sugar and fat for use throughout thebody as energy. An optimal metabolism supports healthy weight controland energy levels, while a dysfunctional metabolism can lead toundesired fluctuations in weight and fatigue or hyperactivity.

In an aspect, analysis component 212 can also determine characteristicsabout a user's metabolic health (e.g., how well the user's body ismetabolizing the user's diet, whether a user's metabolism is functioningat an optimal state or a dysfunctional state and varying degrees therebetween, etc.) based on levels of biomarkers including but not limitedto: insulin, hemoglobin, glucose, lactate and triglycerides. Forexample, biomarkers identifying high levels of blood sugar (e.g.,glucose) can serve as an indicator of cardiovascular disease, kidneydisease, susceptibility to blindness and ulcers. Insulin, a hormonecreated in the pancreas, helps the body use or store blood glucose fromfood. High levels of insulin and blood sugar can indicate type-2diabetes. Optimal levels of triglycerides play a role in providingenergy and ensuring healthy metabolism.

Analysis component 212 can further determine characteristics about auser's metabolism based on levels of thyroid biomarkers. The thyroidgland is the body's regulator of metabolism. An underactive thyroid, orhypothyroid, can result in low energy, weight gain, and coldintolerance, while an overactive thyroid, or hyperthyroid, can causehyperactivity, undesired weight loss, and heat intolerance. In anaspect, analysis component 212 can to determine the degree ofover-activity or under-activity of a user's thyroid based on biomarkersincluding but not limited to: thyroid-stimulating hormone (TSH), freeT3, T-update, T4, thyroid peroxidase, thyroxine, free thyroxine, reverseand T3. In another example, based on metabolic hormone biomarkers,including cortisol, insulin, insulin-like growth hormone, analysiscomponent 212 can determine whether and to what degree a user'smetabolic hormones are imbalanced. The manner in which a user's hormonesare balanced influences the way the user metabolizes, fat, sugar, andprotein to produce and store energy and build tissues such as fat ormuscle.

In an exemplary embodiment, based on detection of various metabolicbiomarker levels, analysis component 212 can determine a level ofexhaustion experienced by a user (e.g., throughout the day, prior toexercise, during exercise, after exercise, etc.). Exhaustion, also knownas fatigue, is the inability of muscle to continue an ongoing physicalactivity. Exhaustion has been linked to several metabolic pathways andtherefore a close examination of the metabolic processes involved inphysical activity could facilitate a more accurate prediction ofexhaustion. Depletion of fuel stored in the muscle (i.e. creatine andglycogen, that are readily accessible as an energy source), as well asaccumulation of metabolic byproducts (e.g. chloride and potassium ionsand lactic acid) are considered the causes of exhaustion. Therefore,analysis component 212 can determine a user's level of exhaustion basedon biomarkers including creatine, glycogen, chloride, potassium, andlactic acid. Analysis component 212, can further determine a level ofuser exhaustion and/or likelihood of exhaustion based on periodicchanges in a user's glucose and lactate levels. Glucose is the primaryenergy source of muscle cells, and lactate is the main by-product ofanaerobic metabolism during intense activity.

In another aspect, analysis component 212 can determine whether a user'sreproductive hormones are present at proper levels, including but notlimited to: estradiol, progesterone, follicle-stimulating hormone,luteinizing hormone, free testosterone, testosterone, DHEA-S and SHBG.These reproductive hormones are produced by a complex interaction of thebrain, adrenal glands, and reproductive organs. In some aspects,analysis component 212 can determine the effects different levels ofthese hormone have on a user's overall growth and muscle gain,metabolism, mood, libido, and reproductive health.

Analysis component 212 can also analyze liver enzyme biomarkersincluding but not limited to: alanine aminotransferase (ALT), alkalinephosphatase (ALP), aspartate transaminase (AST/SGOT), bilirubin,albumin, and globulin to determine whether and to what degree a user'sliver is functioning in a proper and healthy state. For example, amarked elevation in liver enzymes can signify liver dysfunction. Liverenzyme levels provide an indication of liver inflammation, most commonlyfrom medications, infections, or excess body fat. The liver's mainfunction is to filter blood coming through the digestive tract. Theliver is also responsible for detoxifying chemicals, metabolizing drugs,producing proteins, and more. Liver dysfunction can have a negativeimpact on your immune system and energy levels and can lead to liverdisease and cancer.

Analysis component 212 can also determine characteristics of a user'skidney functioning based on various kidney related biomarkers includingcreatinine serum, eGFR, blood urea nitrogen (BUN), and albumin. Properkidney function reflects how well the kidneys are filtering blood.Abnormal kidney function can result in the accumulation of wasteproducts in the body which can cause fatigue, headaches, nausea, andmore.

Analysis component 212 can further analyze levels of biomarkersincluding sodium, potassium, chloride, carbon dioxide and calcium todetermine a state of a user's electrolytes. For example, analysiscomponent 212 can determine whether a user's electrolytes are balancedor imbalanced and to what degree of imbalance. An electrolyte imbalancecan lead to an imbalance in the body's acid-base status, hydration, orconduction of charges across cells, all of which are essential,especially with increased activity. In another example, analysiscomponent 212 can determine a level of a user's electrolytes and whetherthe level is considered low/high (e.g., relative to an optimal level).

In addition, analysis component 212 can determine characteristics of auser's bone health (e.g., whether they are healthy/unhealthy, diseased,inflamed, etc.,) based on biochemical information regarding levels ofvitamin D (and its precursors), calcium and alkaline phosphate (ALP).Bone biomarkers are indicators of how well bone tissue is being removedand replaced, aka “bone remodeling.” When bones remodel excessively orbecome inflamed, there may be large elevations in ALP. Significantlyabnormal marker levels suggest possible bone disorders.

Analysis component 212 can also determine characteristics of a user'sblood health based on levels of a user's platelets, white blood cells,red blood cells, and iron. Blood consists of two main components: thecellular components (red blood cells, white blood cells, and the cellfragments known as platelets); and the liquid component, called plasma.Together, these two parts of the blood are responsible for manyfunctions, including oxygen transport, temperature regulation, bloodclotting, and immune defense. Platelets help form blood clots at thesite of an injured blood vessel. By knowing a user's platelet count aswell as how large the platelets are, analysis component 212 candetermine whether a user has any bleeding or clotting problems. Whiteblood cells are responsible for protecting the body from disease andforeign materials. A low white blood cell count provides an indicationof a user's ability to fight disease, while an overproduction of whiteblood cells could indicate the presence of diseases like leukemia. Redblood cells are the most numerous cell types in the blood and have onemain role: to carry oxygen to tissues in the body and transport carbondioxide back to the lungs to be exhaled. A low red blood cell count canindicate that a user is anemic. In association with analyzing a user'sblood health, analysis component 212 can determine a user's iron levels.Iron is an essential mineral needed to form hemoglobin, the main proteinfound in red blood cells. Iron deficiency can lead to anemia, whileexcess iron can be toxic to the liver or other organs.

In some implementations, analysis component 212 can determine levels ofa user's vitamins and minerals to determine whether a user has a vitaminand/or mineral deficiency. For example, analysis component 212 canidentify a user's folate levels, vitamin D (and its precursors) levels,vitamin B12 levels, RBC folate, RBC magnesium, and calcium. Vitamins areorganic substances required for normal health and function. For example,vitamin B12 is essential for cellular development, including thedevelopment of red and white blood cells. Deficiency in B12 can indicateand lead to anemia and immune dysfunction. Minerals are inorganicsubstances needed for many of the body's processes such as cellulardevelopment, carrying oxygen to tissues, and bone growth. Mineraldeficiencies result in weak bones, organ malfunction, and poor cellulardevelopment, which can cause conditions such as anemia.

Analysis component 212 can also determine a user's antioxidant levels(e.g., levels of beta-carotene, lutein, lycopene, selenium, vitamin A,vitamin C, vitamin E, etc.). Antioxidants are substances the body usesto defend against a whole range of health worries. By preventing theemergence of free radicals, antioxidants keep people feeling and lookingmore youthful. Antioxidants also help to protect against diseases andthe detrimental aging effects of smoking, alcohol, dietary choices,sleep deprivation, and the ravages of stress.

In addition to characteristics about a user's physiological state,analysis component 212 can analyze raw motion data to determine a typeof movement performed (e.g., walking, squatting, jumping, etc.) by theuser and various characteristics of the movement, (e.g., range ofmotion, balance, weight/pressure, and even specific two or threedimensional coordinate positions of respective parts of the user's bodyas they move as a function of time). For example, based on the motiondata for the user as a whole and/or individual body parts of the user(e.g., corresponding to velocity, direction, orientation, position orpressure, etc.), analysis component 212 can determine a movement a useris performing including the precise position of the user's body partswith respect to one another and the ground or an apparatus over a periodof time. In another example, analysis component 212 can determinefeature values based on image data corresponding to the user'sappearance, including two and three dimensional measurements of theuser's body and individual parts (e.g., while moving over time or at astill position), color data, characteristics of facial expressions, etc.

In addition to processing of received physical/physiological data (e.g.,biometric/biochemical data and motion data), analysis component 212 canfurther determine a user's current context at a time during receipt (ornon-receipt) of the physical and physiological data. For example, basedon received context information, analysis component 212 can determine alocation of the user at respective times throughout the day (e.g., usingan internal clock). Analysis component 212 can further determineinformation about the location by parsing various remote sources/systems238 that provide information related to the location and/or the currenttime. For example, analysis component 212 can extract a map of thelocation, determine what physical structures are at the location (e.g.,houses, places of business, landmarks, etc.), information about thephysical structures (e.g., hours of operation), events occurring at thelocation (e.g., traffic, sports match, etc.), current and prospectedweather conditions of the location, etc. Other context data that can beprovided to analysis component 212 and/or determined by analysiscomponent 212 can include but is not limited to: information regardingother persons the user is located near and/or interacting with, whatmood the user is in, or what the user is currently thinking/feeling. Thevarious features that make up a user's context are referred to herein ascontext parameters.

Accordingly, analysis component 212 can essentially determine at anypoint in real-time at which input 234 is received, feature valuescorresponding to at least one of: a physiological state of the user, abiochemical state of the user, a movement of the user or characteristicof the movement, an appearance of the user, and a context of the user.Therefore, analysis component 212 can determine or infer what actions oractivities the user is performing, how the is moving during performanceof the actions or activities, how the user's physiology is functioningduring performance of the actions or activities, when the user isperforming the actions or activities, where the user is performing theactions or activities, how the user appears when performing the actionsor activities, who is near the user during performance of the actions oractivities, and what the user is thinking or feeling (e.g. based oninformation provided by the user and/or various inferences based on theother information and determinations) during performance of the actionsor activities.

In various embodiments, after analysis component 212 has determinedfeature values and/or context parameters based on received physical andphysiological activity data and/or context data, respectively, analysiscomponent 212 then analyzes and/or evaluates a user's performance of theroutine, activity or program. In an aspect, in order to evaluate theuser's performance of the routine/activity/program, analysis component212 evaluates whether, how and to what degree the user is deviatingand/or is likely to deviate from the routine/activity/program, based onthese feature values and/or context parameters and known/predefinedrequirements physical/physiological and/or context metrics for aprogram, routine or activity being monitored. As discussed above, thespecific program, routine or activity that avatar guidance platform 202is monitoring can vary.

In one embodiment, avatar guidance platform 202 can be used to assist auser in association with performance of a physical fitness routine oractivity. According to this embodiment, avatar guidance platform 202 canreceive physical and physiological activity data for a user duringperformance of the fitness routine/activity and compare this physicaland physiological data to reference physical and physiological metricsfor the health/fitness routine to determine whether the user's physicaland physiological performance deviates from the reference physical andphysiological metrics. For example, in response to a determination thatthe user is moving too fast or too slow, has a heart rate to high or toolow, is incorrectly or correctly performing a fitness movement, etc.,avatar guidance platform 202 can determine a response to manifest via anavatar to respond to the deviation or non-deviation. For example, avatarguidance platform 202 can determine an appropriate verbal command orremark for the avatar to speak (e.g., “your heart rate is too low, letsspeed it up”) and/or a physical appearance/motion for the avatar toeffectuate (e.g., the avatar can demonstrate the correct motion, theavatar can express an emotion of gratitude via a facial expressions andbody movements, etc.). Avatar guidance platform 202 can then cause anavatar generated and presented to the user via a GUI (or as a hologram)to carry out the response (e.g., speak the command, perform the motionand appearance change, etc.).

In an aspect, the program, routine, or activity that is monitored byavatar guidance platform 202 is selected by the user (or another entity)from a list of predefined programs, routines, or activities that avatarguidance platform 202 is configured to monitor. In another aspect,avatar guidance platform 202 can allow the user or another entity todesign a custom program, routine or activity for the user. In an aspect,custom programs, routines or activities can be saved and made availableto other users of avatar guidance platform 202 for selection andperformance.

For example, a user can select a specific activity or program (e.g., afitness routine, a sports activity, a diet program, a stress reductionprogram, etc.) to be monitored by avatar guidance platform 202 oranother user can elect the activity or program for the user (e.g., theuser's real life supervisor, doctor, coach etc.). For instance, the usercan select a yoga routine, a golf lesson, a diet program, or a stressmanagement program to follow and have monitored by avatar guidanceplatform 202. In another example, a user or supervisor of the user cancreate a custom program for a user that defines a schedule the usershould adhere to, what actions the user should and shouldn't do andwhen/where, what physiological and/or biochemical status the user shouldhave and when, etc. In another aspect, a user can employ avatar guidanceplatform 202 to monitor several different programs, routines oractivities for the user concurrently. For example, the user can employthe avatar guidance system 200 to set up a personal training avatar tomonitor an exercise and fitness program for the user as well as apersonal assistant avatar configured to monitor the user's adherence toa personal weekly schedule designed by the user.

In an aspect, based on known/predefined requirements for a program,routine or activity being monitored, analysis component 212 candetermine or infer whether, how and to what degree the user is deviatingfrom the program, routine or activity. For example, based on a user'sphysical and physiological feature values and/or context parameters andknown requirements for these values/parameters for the particularprogram, routine or activity, analysis component 212 can determine orinfer information including but not limited to, whether, how and to whatdegree: the user's physical actions or activities deviate from theaction/activity requirements of the program, routine or activity; theuser's movements deviate from the program; the user's physiologicalstate (e.g., based on biometric/biochemical information) deviates fromthe physiological state requirements of the program, routine oractivity; and the user's appearance deviates from the appearancerequirements of the program, routine, or activity.

In another aspect, based on known requirements for a program, routine oractivity (and user profile information), analysis component 212 candetermine or infer whether, how and to what degree a user is likely todeviate from the requirements of a monitored program, routine oractivity in the foreseeable future. For example, analysis component 212can determine or infer when one or more physical and physiologicalactivity feature values and/or context parameters are near orapproaching (e.g., within a threshold degree of deviation) a limit valuefor the physical and physiological activity feature values and contextmetrics required by the program, routine, or activity (e.g., when yourblood pressure is close to exceeding the limit, when your location isnear a forbidden location and you are moving in the direction to theforbidden location, etc.).

In an aspect, known requirements for a specific program, routine, oractivity can include predetermined reference metrics for the specificprogram, routine or activity defining values or value ranges for whatthe user's physical/physiological input feature values and/or contextparameters should be. For example, each specific routine, program oractivity monitored by avatar guidance platform can be associated with aset of predefined reference metrics identifying physical andphysiological feature values that are to be exhibited by the user duringperformance of the routine, program or activity in association withspecific time points, events, or circumstances defined for the routine,program or activity. In an aspect, these reference metrics 220 arestored in memory 218. These reference metrics can be applied to variousalgorithms and classification schemes that relate the reference metricsto determined feature values and/or context parameters with respectadherence to of the user to a specific program, routine, or activity.Accordingly, analysis of physical and physiological feature valuesand/or context parameters with respect to reference metrics can involvevarious ruled based classification schemes wherein the feature valuesare analyzed based in part on the reference metrics for the program,routine or activity to determine whether the user's physical andphysiological feature values and/or context parameters indicate the useris deviating from and/or likely to deviate from, the program, routine,or activity, how the user is deviating and/or is likely to deviate, andor to what degree the user is deviating and/or likely to deviate,(wherein likely can be measured in terms of probability).

In an aspect, evaluation of adherence to a specific program, routine ortask includes a simple comparison of physical and physiological activityfeature values and/or context parameters to known reference metrics forthe specific program, routine or activity. In another aspect, the set ofpredefined reference metrics for a program, routine, or activity caninclude model/reference value ranges for the physical and physiologicalactivity feature values and/or the context parameters. According tothis, aspect, adherence and/or non-adherence to an aspect of a program,routine or activity can be based on deviation outside of a thresholdrange. A set of reference metrics for a program, routine, or activitycan also include model/reference values or model/reference value rangesfor different combinations of physical and physiological activityfeature values and/or context parameters.

For example, based on a comparison of a physical and physiologicalfeature values or set of physical and physiological feature values to areference physical and physiological feature value or set of referencephysical and physiological feature values, analysis component 212 candetermine, whether the user's blood pressure is too high or too low,whether the user's inflammation level is acceptable, whether the user'scardiovascular system is functioning at a desired level of performance,whether a user is becoming fatigued, or whether a user is exhibiting adesired level of physical exertion. In an another example, based on sucha comparison, analysis component 212 can determine, whether the user'sstress levels are appropriate, whether the user's blood sugar is high orlow, whether the user has consumed enough calories, whether the user hasburned enough calories, or whether the user lost the desired amount ofweight or inches of her waist, etc. Still in yet another example, inassociation with performance of a fitness routine and receivedbiochemical information for the user regarding a user's currentelectrolyte levels (e.g., sodium, potassium, chloride, carbon dioxide inblood, and calcium), analysis component 212 can determine whether theuser's biochemical state indicates an imbalance in body acid-base,hydration, or conduction of charges across cells (i.e., all of which areessential, especially with increased activity).

In another example, in association with performance of a physicalfitness routine and reference metrics that define what the user's bodymovement and position should correspond to over the course of thefitness routine, analysis component 212 can determine when the user'sbody position and movement deviates from the requirements of the fitnessroutine, whether the user's body position is correct, or whether theuser's performing an exercise correctly with the proper intensity andform. In another example related to analysis of physical andphysiological activity feature values, based on comparison of biometricdata for a user indicating a user's heart rate is 180 beats per minute(bpm) to reference metric data that defines the target heart rate forthe exercise to be 150 bpm, analysis at step 210 can output adetermination that the user's heart rate is too high, specifically 30bmp too high. In yet another example, based on comparison of motion dataindicating a user's motion pattern corresponds to X when is shouldcorrespond to Y, analysis at step 210 can output a determination thatthe user's motion is incorrect and even more specifically how the motionis incorrect (e.g., the user's legs should be bent another 10°).

In addition to physical and physiological activity feature basedreference metrics, programs, routines and be associated with contextreference parameters that define requirements such as location, time ofday, environmental characteristics, user mood, and other people withinproximity to or interacting with the user. For example, a particularmonitored activity or program, such as program designed to restrict anadolescent's social behavior (e.g., by the adolescent's parents), can beassociated with various predetermined metrics and rule basedclassification schemes regarding what the adolescent should be doing,when the adolescent should be doing it, where the adolescent should belocated, and/or who the adolescent should or shouldn't be with.Accordingly, received contextual information regarding where a user islocated and when, combined with external accessible information aboutthe user's environment (e.g., physical structures, events, etc.) andreceived physical and physiological activity data for the user (e.g.,movement patterns, the user's stress levels, the user's activity levels,user fatigue levels), can facilitate determining or inferring adherenceto the activity or program.

For example, based on a user's location and time of day determinationscan be made regarding the physical environment of the user, such as theterrain, what places of business are around, and what events areoccurring at the location, (e.g., a football game). Depending on theuser activity or program being monitored, this information canfacilitate determinations regarding adherence to the activity orprogram. For example, an alcohol addiction recover program can includecontext metrics that define triggering locations for the user atspecific, such as areas within X meters from a bar between the hours of5 pm and 7 pm. According to this example, analysis component candetermine or infer that the user is deviating from the program or islikely (e.g., has a determined probability of deviated over a thresholdprobability) when headed into an area with a bar a at happy hour time.In another example, with respect to a stress reduction program,reference metrics can define what the user's heart rate, cortisol level,glucose levels, prescription drug levels (e.g., when the user isdirected to take a particular drug according to the program), activitylevels and sleep patterns should correspond to throughout the day, whenat various locations, when interacting with certain people, and/or withrespect to certain activities, (e.g., working, driving, operating acertain machine, reading a book, going for a walk, etc.).

It should be appreciated that the above example comparison basedevaluations of physical, physiological, and/or context parameters toreference metrics are merely exemplary. In particular, a variety of morecomplex rule based classification schemes can be defined that relate aplurality of concurrently received or applicable physical andphysiological activity feature values and/or context parameters to oneanother and their respective reference values for the particularactivity or program to determine whether, how, and to what degree, auser is deviating from a program, routine or activity.

In addition to comparison of determined physical and physiologicalactivity feature values and/or context parameters to the referencemetrics for the program, routine or activity, analysis component 212 canemploy user profile data 222 to personalize evaluation of the user'sperformance and adherence to the program, routine or activity. As aresult, the various aspects and applications of avatar guidance platform202 can be highly personalized.

For example, in one an aspect, the set of predefined reference metricsfor a specific program, routine, or activity can generically suited fora model user. In another aspect, the reference metrics can be providedor adapted by the user performing the activity or program or asupervisor of the user (e.g., an entity or person who instructed theuser to perform the activity or program using the subject avatarresponse system 114, such as the user's coach, health advisor, rehabprogram administrator, mother, etc.). Still in yet another aspect,analysis component 212 can adjust or calibrate evaluation (e.g., usingrule based classification schemes and other intrinsic calculations) ofphysical and physiological activity feature values and/or contextparameters using respective reference metrics for the program, routineor activity, based on user profile data.

User profile information can include but is not limited to, healthinformation, user preferences, user demographics, user schedule andhistorical information about the user's behavior in association withperformance of various activities and programs monitored by the avatarresponse system 114. Health information can include any informationrelated to the user's health and physical state, including knownphysical metrics for the user (e.g., height, weight, body fat, etc.),physical conditions or ailments of the user, physical capabilities ofthe user, and any medications taken by the user. As noted above, in someembodiments, user profile information can also include biochemicalinformation about a user determined from various biological tests (e.g.,blood test, urine test, saliva test, etc.). In other aspects,biochemical information can be received for a user during performance ofa monitored routine or program.

User preference information can vary depending on the application of theavatar guidance platform 202 for the user. Some examples of userpreference information can include features and aspects of a fitness,health or other type of an activity or program that the userprefers/likes and/or does not prefer (e.g., foods the userslikes/dislikes, dietary restrictions, places the user likes to go/notgo, exercises the user likes/dislikes to perform, when the user liked toperform or not perform various activities, etc.). In another example,preference information can relate to what types of character traits thatthe user desires in an avatar designed to respond to, coach or instructthe user. Still in yet another example, user preference information caninclude information defining goals of the user (e.g., fitness goals,weight loss/weight gain goals, what the user desires to look like,milestones in a recovery program, and targets for performance of variousother activities).

User demographic information can define various demographic features ofthe user, including but not limited to: gender, age, nationality,language, education level, or profession. User schedule information canprovide information regarding what the user should and shouldn't bedoing and when based on the user's work, extracurricular activities andpersonal relationships and responsibilities. For example, user scheduleinformation can be provided to determine when a user should be at workand where, what meetings the user has, when the user has set up eventsor social activities, when the user has vacations scheduled, doctorsappointment scheduled, physical therapy or fitness session scheduled,etc. In an aspect, user schedule information can be extracted from apersonal calendar of the user (e.g., from an application employed by theuser on the user's client device 106 and/or at remote source/system238).

Profile information can be received from various sources. In an aspectprofile information can be provided by the user in association withregistration with avatar response system 114, provided by another entityor source (e.g., medical professional, coach, fitness trainer,therapist, rehab program director), automatically imported by the avatarresponse system from various external sources (e.g., heath records, theuser's calendar, social networking profiles, etc.), and/or automaticallyinferred or determined by the avatar response system.

In an aspect, analysis component 212 can employ user profile informationto facilitate determining or inferring a probability at which a user islikely to deviate from a monitored program, routine or activity withinthe near future (e.g., within the next 10 seconds, within the nextminute, within the next 10 minutes, within the next 30 minutes, withinthe next hour, etc.) based on physical and physiological activityfeatures values and/or context metrics received/determined for the user.For example, analysis component 212 can analyze user patterns withrespect to past deviations for program requirements similar to a currentprogram requirement to determine the probability that the user willdeviate from the current program requirement when physical andphysiological activity feature values and/or context parameters for theuser are x, y, and z, (where x, y and z correspond to variable values).In another example, analysis component 212 can analyze user preferences(e.g., what the user prefers to eat/drink, where the user prefers to go,what the user prefers to do, who the user prefers to associated with,etc.), to determine or infer how a degree of likelihood that the userwill deviate from requirements of a monitored program given knowninformation for the user's physical state (e.g., appearance,physiology), the user's body movement/position, and the user's context.

Reaction component 214 is configured to determine or infer a reaction(or non-reaction) for manifestation by an avatar presented to the userbased on a determination by analysis component 212 identifying whether,how and to what degree a user is violating or is likely to violate amonitored program, routine or activity. In particular, a reactioncomponent 214 can determine an action for performance by the user basedon an identified deviation or likely deviation from aprogram/routine/activity requirement that will or is likely tocorrect/avoid the deviation. In some embodiments, reaction component 214can further determine the action based in part on biochemicalinformation received for a user prior and/or during performance of theroutine/activity/program (e.g., information regarding a physiologicalstate or condition of a user based on detection of the one or morebiomarkers discussed herein), profile information for the user, and/orreceived contextual information. Reaction component 214 can furtherdetermine, based on the action, a reaction for manifestation by anavatar presented to the user that guides or motivates the user toperform the action.

The reaction is designed to keep the user's physical/physiologicalperformance and behavior in line with the requirements or goals of amonitored program, routine or activity. For example, when a userdeviation is determined, reaction component 214 can determine a reactionfor manifestation via an avatar that will instruct the user how tocorrect the deviation and/or encourage the user to correct the deviationor improve upon the deviation (e.g., where the deviation reflectspositive behavior). In another example, when analysis component 212determines that a user is complying with a program, routine, oractivity, reaction component 214 can determine a reaction formanifestation via an avatar that provides praise to the user. In anotherexample, when analysis component 212 determines that a user is likely todeviate from a program, routine or activity, reactions component 214 candetermine a reaction for manifestation by an avatar that is designed todeter or prevent the user from deviating from the program, routine oractivity.

In an aspect, a reaction determined by reaction component 214 formanifestation by an avatar can involve visual or spoken instruction bythe avatar providing a mechanism to correct a deviation to a program,routine, or activity, an action taken by the avatar to deter or preventthe user from deviating from the program, etc., a tactic to motivate theuser to adhere to the program, etc., a tactic to praise the user foradhering to the program, etc., or a tactic to criticize the user for notadhering to the program, etc. These reactions can involve visual andverbal actions which a real human may perform and can include but arenot limited to changes in: motion or movement, speech, tone of voice,level of sound/loudness, facial expressions, body language, color, speedof movement, and range of motion. For example, the avatar can speak tothe user and demonstrate body movement and facial expressions that areal human would in order to convey a reaction. In another aspect, anavatar reaction can include sending an electronic message (e.g., email,text message, etc.), or initiating a phone call to another entity viathe client device (e.g., client device 106) employed to render theavatar.

For example, based on a determination by analysis component 212 that auser's heart rate is too high while performing a fitness routine,reaction component 214 can determine that the user should slow his orher heart rate down by decreasing the pace. Reaction component canfurther determine a response for manifestation by the avatar thatdirects the user to slow down. For example, the determined reaction tobe manifested by the avatar can include a verbal spoken command to “slowdown the pace” as well as a physical demonstration by the avatar of theexercise at the correct pace.

In another example, based on a determination by analysis component 212that a user's physiological state indicates the user is experiencinghigh amounts of inflammation and an imbalance of electrolytes, reactioncomponent 214 can determine a response for manifestation by an avatarthat guides or motivates the user to perform an action to correct orimprove the user's physiological state. For instance, the action (asdetermined by analysis component 212) can include an action that isknown or determined to improve the user's physiological state, such asbut not limited to: performing a particular physical exercise,performing a particular, stretch, eating a particular food or beverage,ingesting a particular drug or dietary supplement, performing atherapeutic treatment (e.g., massage, icing, or heat treatment),resting, or seeking emergency medical treatment. In an aspect, thereaction by the avatar can include a verbal command to perform theaction spoken with a specific tone or with a specific facial expression,determined based on the action. In another aspect, the reaction by theavatar can include a behavior to be performed by the avatar with aspecific facial expression determined based on the action.

In another example, in response to a determination by analysis component212 that a user participating in an alcohol addiction recovery programhas a blood alcohol level of X and/or is located at or near a bar, aresponse can be determined by reaction component 214 for manifestationby an avatar that includes verbal instruction criticizing the user forthe bad behavior with corresponding facial expression and body languagethat showing an expression of disappointment. In addition, reactioncomponent 212 can initiate calling of the user's alcohol anonymous (AA)sponsor and the avatar presented to the user can inform the user that aphone call is being initiated. In another example, in response to adetermination that a user is likely to deviate from a diet program basedon information indicating the user is stressed, the user is hungry, andthe user is near another person that the user usually makes deviatingfood choices with on Monday afternoons (when the time is Monday 3 pm),reaction component 214 can determine a reaction for manifestation by anavatar that calls the user's attention to the scenario, and provides theuser with breathing exercises to perform with the avatar as a guide toreduce the user's stress before the user's makes any poor decisions.

In another aspect, an avatar reaction can include provision of externaldata to the user at the client device (e.g., client device 106) employedto render the avatar. The external data can include but is not limitedto: documents, articles, media, multimedia (e.g., video, animations,sounds, music, etc.), or hyperlinks to these data objects, that areaccessible to avatar guidance platform (e.g., in memory 212, or at aremote source/system 238). For example, in association with an avatarreaction to facilitate encouraging a user to stick to an anti-smokingprogram, the avatar can provide the user with an article about theeffects of smoking. In another example, to encourage a user to adhere toa fitness program, the avatar can provide a user with an image ofherself when she used to weight 25 lbs more and an image of what shewill look like at her goal weight.

In another example, in response to a determination by analysis component212 that a user on a diet program is becoming stressed (e.g., based oncortisol levels) and has taken a walk to the vending machine (e.g.,based on location and movement data), reaction component 214 candetermine or infer a reaction for manifestation by an avatar that detersthe user from making bad food choices. For example, reaction component214 can determine a response that includes providing the user withmotivation to stick to the diet program by playing a video of the user'spast fitness dedication. The avatar can further speak to the user toencourage the user not to select the candy bar from the vending machineand rather go to the cafeteria to get a banana (e.g., a preferred snackoption determined based on the user's food preferences and dietaryrestrictions).

In an aspect, reaction component 214 can determine or infer what actionor inaction the user should do to correct an identified deviation andthen determine or infer a proper reaction for manifestation by theavatar to direct the user to perform the action. For example, inresponse to a determination by analysis component 212 that a user hasnot mastered a particular golf swing (e.g., based on a determinationthat the user's physical motion indicates improper performance of thegolf swing), reaction component 214 can determine that the user shouldswitch to practicing a different swing and associated club. Thusreaction component 214 can determine a response for manifestation by anavatar that includes verbal instruction telling the user to switch tothe other club along with physical simulation of the new golf swing withthe new club.

The particular response determined by reaction component 214 formanifestation by an avatar can be based on a plurality of factors andinformation. In an aspect, known deviations, deviation types and degreesof the deviations for a specific program, routine or activity can bedefined and correlated to fixed avatar reactions. For example, for afitness routine, if blood pressure is too high, the associated avatarresponse can include a slowing down movement. In addition, reactioncomponent 214 analyzes user profile information to tailor response tothe particular user, (e.g., based on user preferences, userdemographics, user health information, user behavioral history, etc.).Further, reaction component 214 can consider context information whendetermining a reaction for manifestation via an avatar to counterbalancea deviation (or adherence) to a program, routine or activity. Forexample, when reaction component 214 determines that a user shouldperform an action to reduce stress (e.g., based on a determination thatthe user's stress level is too high in association with a stressreduction program), reaction component 214 can determine the actionbased on the user's location, weather conditions, time of day, etc. Forinstance when it is raining, the action can include performing yogaindoors, yet when it is not raining, the action can include taking awalk outside.

In an aspect, reaction component 214 can employ various defined responserules 224 that relate known deviations and degrees of the deviations fora specific program, routine or activity, with user profile informationand context information to a plurality of possible pre-defined avatarreactions. For example, the response rules 224 can include a set ofprefixed avatar responses that are mapped to potential determinations ofdeterrence and/or adherence to a particular activity or program. Theseprefixed responses are specific to the program, routine, or activitybeing monitored. In an aspect, prefixed responses are defined by anadministrator that created the activity or program guidelines.

In other aspects, reaction component 214 can modify/adapt prefixedavatar reactions and/or develop new avatar reactions based on thespecific program, routine or activity, the determined deviation (oradherence), user profile information (e.g., user preferences, historicaluser behavior, user health information, etc.), user context information,and known capabilities of the avatar, using various classification(explicitly and/or implicitly trained) schemes and/or systems (e.g.,rule based classification schemes, support vector machines, neuralnetworks, expert systems, Bayesian belief networks, fuzzy logic, datafusion engines, etc.).

Processing module 210 can include inference component 216 to provide foror aid in various inferences or determinations associated with aspectsof avatar guidance platform 202. In an aspect, all or portions of avatarguidance platform 202 can be operatively coupled to inference component216. Moreover, inference component 216 can be granted access to all orportions of media provider, remote sources/systems 238, client device106 and other sources accessible via a network 112.

In an aspect, analysis component 212 can employ inference component 216to infer whether, how and to what degree a user deviates from a specificprogram, routine or activity. In association with such inferences,inference component 216 can examine determined physical andphysiological activity feature values and reference physical andphysiological activity feature values, determined context parameters andreference context parameters, user profile information, and othercontext information. In addition, reaction component 212 can employinference component 216 to infer a response for manifestation via anavatar that facilitates adherence to a program, routine or activity.Reaction component 214 can also employ inference component 216 to inferan action a user should perform to correct a deviation from a program,routine or activity as well as a reaction for manifestation via anavatar the directs and/or motivates the user to perform the action. Inassociation with such inferences, inference component 216 can examinedeviations that have been determined/inferred by analysis component 212,information relating such deviations to predetermined avatar responses,user profile information, and user context information.

In another aspect, analysis component 212 can employ inference component216 to infer foreseeable violations/deviations to a program, routine, oractivity which the user is following. For example, where a user onalcohol addiction recover program is headed into an area with severaltriggers for the user (e.g., bars at happy hour time) and the user hashigh cortisol levels, inference component 216 can infer that the user islikely to be inclined to fall off his program and stop at a bar. Basedon inferences identifying foreseeable violation/deviations, reactioncomponent 214 can employ inference component 216 to infer mechanisms tocircumvent the occurrence of the foreseeable violations/deviations andinfer reactions for manifestation via an avatar to facilitate relayingthese mechanisms to the user. In furtherance to the subject example,reaction component 214 can infer that a call to the user's AA sponsorand warning message would help deter the user from violating hisprogram. Thus reaction component 214 can initiate a response formanifestation by the avatar that includes a call to the AA sponsor and amessage delivered with a suitable tone of voice and facial expressionwarning the user not to violate his program.

In order to provide for or aid in the numerous inferences describedherein, inference component 216 can examine the entirety or a subset ofthe data to which it is granted access and can provide for reasoningabout or infer states of the system, environment, etc. from a set ofobservations as captured via events and/or data. An inference can beemployed to identify a specific context or action, or can generate aprobability distribution over states, for example. The inference can beprobabilistic—that is, the computation of a probability distributionover states of interest based on a consideration of data and events. Aninference can also refer to techniques employed for composinghigher-level events from a set of events and/or data.

Such an inference can result in the construction of new events oractions from a set of observed events and/or stored event data, whetheror not the events are correlated in close temporal proximity, andwhether the events and data come from one or several event and datasources. Various classification (explicitly and/or implicitly trained)schemes and/or systems (e.g., support vector machines, neural networks,expert systems, Bayesian belief networks, fuzzy logic, data fusionengines, etc.) can be employed in connection with performing automaticand/or inferred action in connection with the claimed subject matter.

A classifier can map an input attribute vector, x=(x1, x2, x3, x4, xn),to a confidence that the input belongs to a class, such as byf(x)=confidence(class). Such classification can employ a probabilisticand/or statistical-based analysis (e.g., factoring into the analysisutilities and costs) to prognose or infer an action that a user desiresto be automatically performed. A support vector machine (SVM) is anexample of a classifier that can be employed. The SVM operates byfinding a hyper-surface in the space of possible inputs, where thehyper-surface attempts to split the triggering criteria from thenon-triggering events. Intuitively, this makes the classificationcorrect for testing data that is near, but not identical to trainingdata. Other directed and undirected model classification approachesinclude, e.g., naïve Bayes, Bayesian networks, decision trees, neuralnetworks, fuzzy logic models, and probabilistic classification modelsproviding different patterns of independence can be employed.Classification as used herein also is inclusive of statisticalregression that is utilized to develop models of priority.

Avatar guidance platform 202 can further include interface component206, avatar control component 208 and avatar generation component 226.Interface component 206 configures a graphical user interface(s) thatfacilitates user interaction with system 200. In particular, interfacecomponent is configured to generate a graphical user interface thatincludes an avatar that performs the various reactions discussed herein.The graphical user interface is presented to the user via renderingcomponent 236 located at a client device (e.g., client device 106)employed by the user. In some aspects, the interface can providemechanisms to select or create a program, routine or activity that auser would like to perform and have monitored via avatar guidanceplatform 202. The interface can further provide mechanisms for receivinginput from a user related to a profile of the user and allowing the userto access and view his or her profile information. Some exemplaryinterfaces configured by interface component 206 in association withapplication of avatar guidance platform 202 to facilitate guiding a userthough a fitness routine or activity are presented in FIGS. 5-7.

Avatar control component 208 is configured to evaluate a response orreaction that was determined by reaction component 214 for manifestationby an avatar presented to a user, to determine control commands toprovide to avatar generation component 226 to effectuate the response bythe avatar. Avatar generation component 226 is configured to generate anavatar that performs the response/reaction based on the controlcommands. In particular, avatar generation component 226 is configuredapply the control commands to an avatar displayed to a user and generatean avatar performing the response/reaction. In essence, avatargeneration component 226 is configured to generate an animation with anavatar moving, speaking, and/or appearing based on control commandsreceived from avatar control component 208.

As previously described, in an aspect, avatar guidance platform 202 islocated at the client device (e.g., client device 106) that includesrendering component 236. In another aspect, one or more components ofavatar guidance platform 202 are located at a remote server (e.g.,avatar server 116). For example, interface component 206, avatar controlcomponent 208, and avatar generation component 226 can be located at aremote server. According to this aspect, a user can access an interface,(e.g., using client device 106 for display at the client device)including the avatar performing various responses based on the user'sinput 234 via a network (e.g., at a website or other networkedplatform). The animation including the avatar can be provided to theclient device for rendering as streaming video streamed thereto from theserver. In another aspect, one or more components of avatar guidanceplatform 202 can be distributed between the server and the client. Forexample, a remote server can include the avatar control component 208while the client device can include the avatar generation component 226.According to this example, avatar control component 208 can send thecontrol commands to the client device via a network. Upon receipt of thecontrol commands, the avatar generation component 226 at the clientdevice can generate the avatar animation based on the control commands.

In an aspect, an avatar generated in association with providing guidanceand instruction to a user with respect to performance of a program,routine, or activity can inform the user via visual and/or audible(e.g., speech) responses how to perform the selected activity or programprior to beginning the program/activity and/or over the course of theprogram/activity. For example, when the selected activity is a fitnessroutine, an avatar can be generated and presented to that performs atleast part of the fitness routine so that the user can copy or followthe avatar. In another example, the user can have knowledge of what anactivity or program requires (e.g., a diet program, a daily routine, anaddiction recovery program) and an avatar generated to guide adherenceto the activity or program can simply respond to the user's adherence ornon-adherence to the requirements of the activity or program.

As previously noted, avatar guidance platform 202 can be employed toguide a user in association with performance of a variety of differentprograms, routines and activities. In one exemplary embodiment, avatarguidance platform 202 is employed to facilitate guiding a user through afitness routine or activity. Avatar guidance platform 202 can includefitness module 230 to provide various features specific to thisapplication. In another exemplary embodiment, avatar guidance platform202 is employed to provide a user with a personal guide or assistant tofacilitate adherence to a program or schedule. According to thisembodiment, avatar guidance platform 202 can include program guidemodule 232 to provide various features specific to this application.Fitness module 230 and program guide module 232 are discussed in greaterdetail infra.

FIG. 3 provides a high level flow diagram 300 of a process for guidingor assisting a user with adhering to a program, routine or activityusing an avatar in accordance with various aspects and embodimentsdescribed herein. Repetitive description of like elements included inrespective embodiments of systems and methods described herein isomitted for sake of brevity.

Process 300 involves receiving and processing various input data about auser's physical state and activity along with various other personal andcontextual information to facilitate guiding and assisting the user withperformance of a particular program, routine or activity viamanifestation of responses via an avatar based on the input. Inparticular, at 308, raw physical data 304 and context information 306for a user is received and processed to determine corresponding physicaland physiological activity feature values and contextmetrics/parameters, respectively. The raw physical data 304 can includebiometric data, biochemical data movement data, and/or image datacaptured for the user via various sensor devices attached to the user(e.g., sensor device 104) and/or various auxiliary devices (e.g.intelligent fitness device(s) 118, visual capture device 110, sensormodule 112, etc.) as the user performs a specific program, routine oractivity. The context information 306 can include location information(including information about the location, such as weather, events,physical structures, etc.), time of day, and other real-time user input(e.g., input provided by the user regarding the user's thoughts,feelings, desires, etc.).

For example, based on received physical and physiological data 304, at308 various information about a user's physiological state can bedetermined (e.g., heart rate, blood pressure, temperature, caloriesburned, blood alcohol level, cortisol level, glucose level, blood oxygenlevel, ferritin level, LDL level, creatine kinase level, folate level,vitamin B12 level, hemoglobin level, etc.). In addition, based onreceived motion/movement data and/or image data over a period of time,pattern analysis can be employed to determine what physical movementsthe user is performing (e.g., jumping, running, performing a specificyoga pose, performing a chest press, etc.) as well as characteristicabout the movements (e.g., body position, speed, pressure, intensity,etc.).

At 310, the physical and physiological activity feature values andcontext metrics are processed to determine whether, how and to whatdegree the user deviates from the monitored program, routine oractivity. This processing can involve evaluation of the physical andphysiological activity feature values and context metrics in view ofmodel or reference physical and physiological activity feature metricsand/or reference context metrics for the monitored program, routine oractivity. For example, this processing can include comparison ofdetermined physical and physiological activity feature values and/orcontext metrics to corresponding reference metrics for the monitoredprogram, routine or activity to determine whether, how and to whatdegree the user's performance and behavior deviates there from. In anaspect, this processing can involve various classification schemes andthat relate different combinations of physical and physiologicalactivity feature values to one another based on the correspondingreference metrics to determine or infer whether, how and to what degreethe user deviates from the monitored program, routine or activity.

In addition to reference metrics, processing at step 310 can alsoinvolve analysis of received physical and physiological activity featurevalues and/or context information in view of requirements for thesevalues in association with performance of the monitored program, routineor activity, and based on user profile information 302. This profileinformation can include but is not limited to: user health information,user preferences, user demographics, user schedule, and user performancehistory in association with the monitored program, routine or activity,and/or other monitored programs, routines or activities for the user. Insome embodiments, this profile information can also include biochemicalinformation for a user determined via one or more biological tests(e.g., a blood test, a urine test, a saliva test, a tear fluid test,etc.). According to this aspect, the physical and physiological activityand contextual requirements for a program, routine, or activity can betailored to account for a user's physical capabilities, preferences andgoals, demographics, schedule, or history. Accordingly, where twodifferent user's perform the same routine and exhibit the same physicaland physiological activity feature values, one user can be determined todeviate the program while another could be determined to adhere to theprogram.

At 312, based on a determination of whether, how, and to what degree auser deviates from a monitored program, routine or activity, a responseis determined for manifestation by an avatar. The response is specificto the deviation (or determination of no deviation), the degree of thedeviation, the program, routine or activity being monitored, the user,and potentially the context of the user. In aspect, an avatarresponse/reaction is determined or inferred based in part on variousprefixed responses for the monitored program, routine, or activity andthe particular deviation, user profile information 302 and contextinformation 306. The response is specifically designed to provide theuser with guidance in association with adhering to the monitoredprogram, routine or activity. For example, where a user deviates from amonitored program, the response can include verbal and/or visualinstruction by the avatar to command and/or motivate the user to performan action to correct or accommodate the deviation. In another example,where it is determined that the user is properly adhering to a monitoredprogram or activity, a response could include a showing of praise andencouragement by the avatar. In another example, where it is determinedat step 310 that the user is likely to deviate from a program in theforeseeable future (e.g., by likely eating bad food based on adetermination the user is located at a fast food restaurant), theresponse can include a mechanism to prevent the user from deviating. Forexample, such a mechanism could include provision of motivationalcoaching, alternative options, or imagery and/or external source data bythe avatar that is selected to persuade the user to stick to theprogram.

After a response is determined at step 312, an avatar presented to theuser is directed to perform or implement the response. For example,avatar generation component 226 can generate and avatar that performsthe response based on control commands provided by avatar controlcomponent 208. These control commands are specifically designed byavatar control component 208 to cause the avatar to perform thedetermined response. For example, when the avatar response includesspeaking a phrase while performing a specific movement and smiling, thecontrol commands can direct avatar generation component 226 to generatean avatar that speaks the phrase while performing the specific movementand smiling.

FIG. 4 provides an example embodiment of fitness module 230 inaccordance with various aspects described herein. Repetitive descriptionof like elements included in respective embodiments of systems andmethods described herein is omitted for sake of brevity.

Fitness module 230 is specifically configured to facilitate guiding orassisting a user with adhering to a physical fitness routine or activityusing an avatar in association with various aspects of avatar guidanceplatform 202. For fitness applications such as physical therapy,personal training, aerobics, performing a sports activity (e.g.,gymnastics, golf, etc.), etc., the avatar plays the role of a virtualphysical therapist, personal trainer or teacher. During the routine oractivity, the user's physical inputs (e.g., physiological, motion,and/or image input) will automatically control the behavior of theavatar. The behavior of the avatar is designed to guide or assist theuser with performance of fitness routine or activity. For example, theavatar's behavior can resemble that which a real trainer would exhibitto provide instruction, demonstration, motivation, praise, coaching,etc. throughout performance of the fitness routine/activity.

In particular, prior to, during, and after performance of a specificfitness routine or activity, a user's physical/physiological input isreceived by reception component 204 in accordance with aspects describedherein. The user's physical and physiological activity input is furtherprocessed by analysis component 212 as it is received (in real-time ornear-real) to evaluate the user's adherence to physical/physiologicalperformance requirements of the specific fitness routine or activity, inaccordance with aspects described herein. Based on this evaluation,responses/reactions are determined for manifestation by an avatar (e.g.,by avatar reaction component 214), in accordance with aspects describedherein. Avatar control component 208 and avatar generation component 226then cause an avatar presented to the user to perform theresponse/reactions.

For example, in accordance with various aspects of avatar guidancesystem 200 and fitness module 230, a user can begin performance of aselected or assigned fitness routine/activity. An avatar is presented tothe user (via a graphical user interface or as a hologram) to help guidethe user through the routine/activity and serve as the user's coach ortrainer. Depending on the selected fitness activity or routine, theavatar can be configured to perform some or all of the fitness routinewith the user so that the user can mimic the movements of the avatar. Inanother aspect, the avatar can be configured to direct the user toperform various actions in accordance with the routine and providedemonstration of physical movements of the routine movements whennecessary.

As the user performs the routine, avatar guidance platform 202 receivesphysical and physiological input data for the user in accordance withaspects described herein. This information, along with context data insome implementations, is evaluated as it is received to determinewhether, how, and to what degree the user's performance deviates fromthe physical and physiological requirements of the fitness routine(e.g., as defined by physical/physiological performance metrics). Forexample, the user's physical and physiological data can be compared toreference information for the routine defining requirements for thephysical and physiological activity data in association with performanceof the physical routine (e.g., physiological metrics associated withrespective movements and/or times throughout the routine, actions theuser should perform to accomplish the routine, when to perform them andhow to perform them with respect to range or motion, body position,intensity, etc.). Analysis of these reference metrics is further adaptedbased on user profile information (e.g., user physical restrictions,user physical capabilities, user demographics, preferences etc.).Analysis component 212 can also determine whether, how and to whatdegree the user is likely to deviate from a requirement of the fitnessroutine based on received physical/physiological data for the user andcontext data as well as profile information for the user.

For example, during performance of a physical fitness activity,information regarding a user's heart rate can be received from a heartrate monitor worn by the user. For instance, analysis component 212 candetermine that the user's heart rate is 100 beats per minute. Theanalysis component 212 can further determine that the user deviates fromthe requirements of the routine based on having a heart rate below theoptimal heart rate (e.g., where the routine requires a person having theheight, weight and age of the user to have a heart rate of 125 beats perminute). In another example, during performance of the physical fitnessactivity, analysis component 212 can receive movement data identifying aform and speed of a motion being performed by the user. Analysiscomponent 212 can further determine that the user is deviating from aphysical form and speed requirement for the activity based on comparisonof the received movement data to reference metrics for the routine.

In some embodiments, analysis component 212 is configured to determineor infer one or more characteristics of a physiological state orcondition of the user based on received biochemical informationidentifying the presence or the status of the one or more biomarkers.For example, analysis component 212 can determine a level of abiomarker, a degree of severity of a physiological condition associatedwith a detected biomarker, or health or performance status of aparticular human body system of the user. The analysis component 212 canfurther compare the one or more characteristics of the physiologicalstate or condition of the user during performance of the fitness routineto reference metrics for the one or more characteristics in associationwith performance of the fitness routine to determine whether how and towhat degree the user deviates from the requirements. For example, thereference metrics can identify a proper level for the biomarker, anacceptable range of severity of the physiological condition associatedwith the biomarker, or an acceptable health or performance status of theparticular human body system.

For example, based on biometric and biochemical data regarding a user'smuscle energy output received prior to and during performance of afitness activity, analysis component 212 can quantify how warmed-up theuser is, how much energy the user is exerting, and how fatigued the useris. Analysis component 212 can further determine whether the user'slevel of warm-up, energy exertion, and/or fatigue is within acceptableranges of requirements of the fitness routine based on comparison toreference metrics for the fitness routine. In other examples, analysiscomponent 212 can determine based on received biochemical data, whethera user's electrolytes are too high or too low, whether a user isexperience inflammation above a desired level, whether a user isbecoming exhausted, whether the user's hydration level is too high ortoo low, whether the user's V02 max is at a desired level, etc.

After analysis component determines whether, how, and to what degree auser deviates and/or is likely to deviate from a physical/physiologicaland/or contextual requirement of a physical fitness routine or activity,reaction component 214 determines a reaction for an avatar presented tothe user that is designed to either correct the deviation, praise theuser for not deviating, and/or encourage the used to avoid a possibledeviation before it occurs. The reaction will vary based on theparticular physical fitness routine/activity being performed, thepredefined physical/physiological and/contextual requirements of theroutine/activity, and the personal capabilities, preferences, goals, andhealth status/history of the user. In general, the reaction is intendedto guide or encourage optimal performance of the physical fitnessroutine by the user.

In some embodiments, reaction component 214 can determine an action forperformance by the user that has been previously determined to corrector prevent a particular deviation to a physical fitness routine. Forexample, the action can be previously determined to correct or preventthe particular deviation to the physical fitness routine based on provenscientific research or learned user behavior (e.g., via machine learningor otherwise). In an aspect, reaction component 214 can determine theaction based the specific physical routine, the type of deviation anddegree of the deviation, prefixed responses for the routine anddeviation, user profile information and potentially context information.

Suitable reactions to deviations in physical movement and/or motionrequirements (e.g., form, range of motion, speed, reaction time, etc.)of a fitness routine/activity can include specific physical changes tothe user's form, range, of motion, speed, reaction time, etc., thatcorrect the physical movement/motion deviation. For example, in responseto a determination that a user is performing push up with improper form,analysis component 212 can determine that the user should either beinstructed to correct the form or perform a modified push up with his orher knees on the floor.

Suitable actions that can correct observed deviations based onphysiological data (e.g., biometric/biochemical) can include but are notlimited to: a modification to a manner of a physical movement, intensityof the movement, or speed of the movement, a direction to perform aspecific physical exercise at a specific intensity, speed, range ofmotion, etc., repetition of particular exercise, stopping of aparticular exercise, resting, stretching, drinking water, ingesting afood or dietary supplement, ingesting a particular drug, or applying atherapeutic treatment such as an ice treatment or a heat treatment. Forexample, in response to a determination that a user's hear rate is belowa desired level during performance of a plyometric routine, analysiscomponent 212 can determine that the user should increase the durationof a specific movement of the plyometric routine by 15 seconds. Inanother example, in response to a determination that a user's quadricepsare becoming fatigued beyond an acceptable level during a squat pressexercise, analysis component 212 can determine that the user shouldreduce a weight load employed during performance of the exercise. In yetanother example, in response to a determination that a user is becomingdehydrated or his or her electrolytes re lowering beyond a desired levelduring performance of a marathon, analysis component 212 can determinethat the user should ingest a high electrolyte fluid supplement.

According to these embodiments, the action can be standardized for allusers or personalized based on specific physical/physiologicalcharacteristics and demographics of the user (e.g., age, weight, height,BMI, etc.). The action can also be tailored based on a user's personalpreferences, capabilities and physiological/physical status orcondition. According to this aspect, reaction component 214 canpersonalize an action for performance by a user that is designed toprevent or correct a physical/physiological deviation to a fitnessroutine based on biochemical information received for the user before orduring performance of the fitness routine. For example, based onreceived biochemical information for a user indicting the user isexperiencing muscle soreness/fatigue in his quadriceps prior tobeginning a fitness routine, reaction component 214 can determinephysical modifications to enhance the user's performance of the fitnessroutine that do not involve heavy exertion of the quadriceps.

Further, the action can be tailored based on a user's current context.For example, reaction component 214 can take into consideration auser's, location, services and equipment available at the location,food/water and dietary supplies available, weather at the location(e.g., when the location is outdoors), time of day, etc. For example,during performance of fitness routine outdoors at a facility thatinvolves a pool, in response a determination that a user is becomingoverheated, reaction component 214 can determine that a suitableresponse includes performance of recovery exercise in the pool.

Reaction component 214 is further configured to determine a reaction orresponse for performance by an avatar presented to the user based on adetermination of whether, how and to what degree a user has violated oris likely to violate a physical/physiological and/or contextualrequirement of a monitored fitness routine/activity. For example, inresponse to a determination that a user has not and is not likely todeviate from a requirement of the fitness routine/activity, reactioncomponent 214 can select a praise or encouragement avatar reaction.Likewise, in response to a determination that a user is likely todeviate, reaction component 214 can select an avatar reaction thatprevents the user from performing the deviation. Similarly, in responseto a determination that a user is deviating from a requirement of theroutine, reaction component 214 can determine a reaction for an avatarthat helps the user to correct the deviation and/or minimize the impactof the deviation.

Avatar control component 208 and avatar generation component 226 canthen cause the avatar to perform the reaction. For example, the avatarreaction can include visual and/or audible reactions in the avatar,including but not limited to: a vocal command, a behavior, a physicalmovement or demonstration. When providing vocal commands and/orgestures/movements, the avatar can react with a specific tone of voice,inflection, facial expression, body language, etc., that a real humanwould in order to convey the information intended by the reaction. Insome aspects, the reaction can include initiation of electroniccommunication (e.g., sending a notification, initiating an emergencycall), and provision of external media (e.g., images, articles, a map,videos, songs, etc.) to the user to facilitate guiding the user withadherence to the program

In some implementations, the avatar reaction can be selected by reactioncomponent 214 from a set of predefined avatar reactions. The predefinedavatar reactions can be respectively associated with a specific typeand/or degree of deviation, and/or a specific action, (determined byreaction component 214) for performance by a user based on adetermination regarding whether, how, and to what degree the user is oris likely to deviate from the physical fitness routine/activity.Characteristics about the avatar reaction (e.g., tone of voice, facialexpression, body language, volume of voice, sources of external dataemployed for motivation, etc.) can also be tailed or personalized for aparticular user (e.g., based on the user's profile, preferences, learnedbehavior of the user, goals of the user, etc.).

For example, in order to encourage the user to increase his heart rate,an avatar presented to the user can visually increase the pace of themotion being performed by the user, provide verbal instruction toincrease speed, or a provide a visual or audible indicator thatincreases the rhythm of the motion to encourage the user to match thepace. For instance, when performing alternating lateral lunges(mimicking the motion of speed skating as they are also known) whenmoving side to side, one's heart rate should increase. If the targetheart rate is not met, the speed at which an avatar demonstrating theexercise is lunging side to side will increase until the targeted heatrate is met. Conversely, if the user's heart rate exceeds the targetzone, the avatar will slow down until the user's heart rate also drops.In another example, the avatar can change aspects (e.g., the rhythm, thesong, the volume, etc.) of music playing to motivate the user toincrease his pace.

In addition to improving or optimizing a user's physical performance ofa physical fitness routine/activity, by customizing and automaticallyresponding to changes in the user's physical/physiological data, theavatar guidance system 200 promotes user safety during physical exerciseand prevents injury. In particular, the avatar guidance system 200 isconfigured to respond to user input automatically and in real-time,thereby providing indication of a potentially dangerous activity inadvance of an unsafe result. For instance, if the system recognizescertain metrics as leading to bodily harm, the system can instruct theavatar to stop the workout session and contact a health professional orautomatically send a notification (e.g., a call, electronic message,etc.) to the health professional. If necessary, the system canadditionally or alternatively be configured to contact emergencyservices, thus saving precious time in the event of a severe orpotentiality life threatening injury.

To provide for various aspects of avatar guidance system 200 whenapplied to facilitate a fitness routine or activity, fitness module 230can include routine selection component 404, routine builder component406, preview component 408, avatar customization component 410, routineadaptation component 412, comparison demonstration component 414 andreporting component 416. Fitness module 230 can also include variousdata objects stored in memory 418 (which can be inclusive of memory 218)that are specific to aspects of fitness module. These data objects caninclude information defining various fitness routines/activities 420 andactivities capable of being monitored by fitness module 230, informationdefining various fitness movements or moves 422 capable of beingperformed by an avatar in association with a fitness routine oractivity, and historical information for respective users logging theirperformance of fitness routines or activities using fitness module 230.

Routine selection component 404 is configured to allow a user of fitnessmodule 230 to select a preconfigured fitness routine or activity toperform from a database of routines/activities 420. Each of theseroutines or activities has a defined set of physical moves andrequirements for the user to perform. For example, the routine oractivity can include an aerobics routine, a physical therapy session, astrength training exercise, a yoga routine, a dance routine, a golfexercise, a running workout, a biking workout, kickboxing workout, etc.The routine or activity can be designed for performance in a fixed spaceindoors or outdoors, over changing indoor or outdoor terrain, and/orusing various equipment or apparatuses.

In another aspect, rather the selecting a stock fitness routine oractivity to perform, routine builder component 406 can facilitatedesigning a custom routine for the user to perform. In an aspect,routine builder component 406 can allow the user (or a supervisor of theuser), to build a custom fitness routine or activity by selectingvarious fitness moves to include in the routine or activity andselecting physical and physiological activity parameters associated withperformance of the fitness moves. For example, using a database of aplurality of known physical movements capable of being performed by ahuman in association with a wide variety of fitness activities (e.g.,moves database 422), the user can pick and chose various moves and/orcombinations of moves to include in a fitness routine. For instance,when designing an aerobics routine, the user can select differentaerobics moves can combinations of moves from a database of possiblemoves. In association with selecting moves, the user can also selectcharacteristics associated with performance of the moves, such asintensity, duration, frequency, range of motion, speed, etc. Forexample, when designing a strength training routine, the user can selectwhat weight lifting movements to perform, weight to employ for eachmovement, number of repetitions, number of sets, range of motion, etc.

Still in yet another aspect, routine builder component 406 can beconfigured to design a custom fitness routine or activity for a userbased on the user's needs, desires, physical abilities and context. Inparticular, routine builder component 406 can design a customizedfitness routine or activity for a user to perform based on user profileinformation including but not limited to: information describing theuser's demographics, physical profile (e.g., height, weight, physicalabilities, physical injuries or restrictions, etc.), physiologicalprofile (e.g., biochemical/biometric information about a physiologicalstate/status of the user, including presence and levels of variousbiomarkers), preferences (e.g., what types of activities the userprefers or dislikes), goals (e.g., fitness activity performance goals,weight loss/gain goals, muscle building goals, etc.), and monitoredphysical performance history, (e.g., history of fitnessroutines/activities the user has completed and summary of the user'sperformance). For example, based on user profile information, routinebuilder component 406 can design a customized routine for the user toperform that includes moves the user is capable of safely performing,moves the user prefers, moves that will challenge the user andfacilitate achieving the user's goals, moves that the user did notperform yesterday, etc.

In addition, avatar customization component 410 can analyze contextinformation when designing or selecting a customized routine or activityfor a user to perform. For example, avatar customization component 406can consider the user's location, the time of day, the amount of timeavailable to the user, the current weather associated with the location,and fitness equipment/apparatuses available to the user. In an aspect,in association with designing a customized routine for a user, routinebuilder component 406 can receive user input providing some desiredcharacteristics for the routine. For example, the user can provideinformation regarding a type of activity the user would like to performthat day, (e.g., cardio, weight training, yoga, kickboxing,running/biking outside, etc.), one or more muscle groups the user wouldlike to work on, the desired duration of the activity.

In an aspect, an avatar generated and presented to a user in associationwith performance of a fitness routine or activity can perform themovements of the fitness routine or activity. While designing a fitnessroutine or activity and/or prior to performing a fitness routine oractivity, the user may desire to see a demonstration of one or more ofthe physical moves required by the activity. Preview component 408 isconfigured to generate an avatar that demonstrates one or more movesselected for inclusion in a fitness routine or activity prior tobeginning performance of the routine or activity. For example, a usercan select a stock routine or activity and/or select a custom routinethat has been designed for the user (e.g., automatically by routinebuilder component 406) and then select preview component 408 to bepresented with an avatar that demonstrates one or more of the movesincluded in the selected routine or activity. Based on the preview, theuser can decide whether or not to proceed with performance of theselected routine or activity.

In another aspect, while designing a custom fitness routine or activity,the user can view an avatar demonstrating a chosen move or combinationof moves based on the requirements selected for the move or combinationof the moves (e.g., speed, intensity, range of motion, etc.). Forexample, the user can select a series of yoga poses to include in a yogaroutine and the select preview component 408 to view the series of yogaposes being performed by an avatar. If the user is unsatisfied with themanner in which the poses flow based on the preview, the user can changeaspects of the selected pose series. In an aspect, when viewing thepreviewed demonstration of a fitness move or moves, preview component408 can allow the user to change the perspective of view of the avatar.For example, the user can rotate a virtual camera pointed at the avatarto various viewpoints (e.g., 360° with respect one or more axis) of theavatar so that the user can view the avatar's body position duringperformance of the fitness move from various points of view.

Avatar customization component 410 allows a user to customize the avatarpresented to the user to facilitate a fitness routine or activity. In anaspect, avatar customization component 410 can allow the user tomanipulate variables to create an avatar that reflects the needs andtastes of the user. In particular, using avatar customization component410, a user can select the avatar's appearance, demographics, voice andpersonality. For example, the age, gender, language or accent, dress, orother visual and/or audio characteristic of the avatar may be selectedto motivate and/or comfort the user. In another aspect, avatarcustomization component 410 can provide predetermined character personasfor the user to select and apply to his or her avatar. For example, theavatar can be selected from a familiar character set that includes knowncartoon characters or people (e.g., famous actors, musicians,politicians, athletes, etc.) where such characters creators or personshave authorized usage of their persona. For example, a cartoon avatarmay be suitable to lead a child user through an exercise regime, or apopular athlete or fitness trainer may motivate an adult user to adhereto a fitness program.

In another aspect, avatar customization component 410 can automaticallydesign an avatar to facilitate a user with a fitness routine oractivity. According to this aspect, avatar customization component 410can select the avatar's appearance, demographics, voice and personalitybased on one or more of: the fitness routine or activity selected forperformance, profile information for the user regarding the user'spreferences, the user's demographics, and the user's performance historywith respect to monitored fitness routines or activities. For example,based on analysis of the user's preferences and demographics, avatarcustomization component 410 can determine or infer what type of avatarin terms of appearance and personality would best facilitate/motivatethe user in association with performance of a selected fitness activityor routine (e.g., based on data relating avatar appearance and charactertraits to various aspects of user profile information).

In an aspect, an avatar configured to facilitate performance of afitness routine or activity is configured to perform the fitness routineor activity so that the user can mimic the avatar. For example, aselected fitness routine or activity has known movements andrequirements that can automatically control the movements of the avatar.In another aspect, avatar customization component 410 can allow a userto select the manner and degree to which the avatar performs the movesof a fitness routine or activity. For example, using avatarcustomization component 410, the user can select the degree of physicaldemonstration and instruction the user would like his or her avatar toprovide. According to this example, the user could select fullperformance mode wherein the avatar is configured to perform the fitnessroutine or activity in full, or partial performance mode wherein theavatar is configured to perform parts of the routine or activity (e.g.,provide a short demonstration of each new movement of a fitness routineor activity, provide demonstration of a move during a fitness routine oractivity only upon request of the user during the course of the routineor activity, etc.). In another example, the user could select instructmode wherein the avatar is configured to provide only verbal instructionregarding performance of a fitness routine or activity with theexception of a physical movement demonstration reaction determined byreaction component 214. In another example, avatar customizationcomponent 410 can allow the user to select correction mode wherein theavatar is configured to only demonstrate a move when the user performsit improperly.

Routine adaptation component 412 is configured to dynamically adaptaspects of a fitness routine or activity being performed by a user basedon received physical and physiological activity for the user (prior to,during, or following performance of the fitness routine/activity), userprofile information (e.g., including in some aspects, informationregarding a physiological state or condition of the user based onbiochemical information), and potentially user context information. Forinstance, in some aspects an avatar's reaction to user performancedeviating from a fitness routine or activity includes a visual or verbalcue to help or motivate the user correct the deviation. For example,when a user is moving too fast or too slow, the avatar's reaction isdesigned to cause the user to slow down or speed up, respectively. Inother aspects, an avatar's reaction to user performance adhering to thefitness routine or activity (e.g., the user is performing the routinecorrectly with respect to physical and physiological activityrequirements of the routine) is designed to simply provide praise to theuser and encourage the user to keep up the good work.

However, in various additional aspects, an avatar's response to a user'sperformance deviating from or adhering to a fitness routine or activitycan involve adaptation of requirements of the routine or activity,changing of the fitness routine or activity, and/or stopping of thefitness routine or activity. For example, in some situations where auser's physical and physiological activity performance is belowstandard, rather than pushing the user to improve his or herperformance, it may be more appropriate to have the user to take a breakand rest, stop performance altogether (e.g., where physical and/orphysiological input indicates the user is at risk for physical injury),have the user perform an easier version of the fitness routine, or havethe user perform an different routine or physical activity. In anotherexample, in situations where a user's physical and physiologicalperformance is above standard and/or consistently on point, rather thanmerely praising the user for the good performance and encouraging theuser to keep it up, it may be more appropriate to increase the intensityor difficulty level of the fitness activity or have the user advance toa new fitness activity that focuses on a new muscle group or skill set.

According to this aspect, fitness module 230 can include routineadaptation component 412. Routine adaptation component 412 is configuredto dynamically determine whether and how to adapt or change the physicaland physiological activity requirements of a fitness routine or activityduring performance of the fitness routine or activity by a user, and/orwhether and how to change the fitness routine or activity beingperformed by the user during performance of the fitness routine oractivity be the user. In response to a determination to adapt a fitnessroutine or activity during performance of the fitness routine oractivity by the user, routine adaptation component 412 can directprocessing module to evaluate the user's performance based on theadaptation (e.g., new physiological and/or motion or pressure referencemetrics). In addition, routine adaptation component 412 and/or reactioncomponent 214 can determine a reaction for manifestation via the avatarto inform the user regarding the adaptation and facilitate performanceof the routine by the user with the adaptation. This determined reactioncan be then be automatically effectuated by avatar control component 208and avatar generation component 226 during performance of the fitnessroutine or activity by the user.

In an aspect, routine adaptation component 412 is configured to makedeterminations regarding whether and how to adapt a fitness routine oractivity based on analysis of a degree, consistency and frequency of adeviation or non-deviation during performance of the routine (e.g., withrespect to degree, consistency and frequency thresholds for thedeviation in association with performance of the routine), user profileinformation and/or context information. For example, routine adaptationcomponent 412 can be configured to adjust the requirements of a fitnessroutine or activity based on consistent performance of the fitnessroutine or activity below standard performance, above standardperformance, or at standard performance, wherein consistency isevaluated based on reference metric thresholds for frequency andduration of the deviation or non-deviation and/or degree of thedeviation. For example, where a user consistently performs below therequired amount of reps on a weight machine, routine adaptationcomponent 412 can determine that the amount of reps and/or weight shouldbe lowered. In another example, where a user continually throws fartherthan a required distance, routine adaptation component 412 can determinethat the required distance should be increased. In yet another example,where a user consistently performs a fitness move at a requiredintensity yet does not have an increase in heart rate, routineadaptation component 412 can determine that the required intensity ofthe fitness move should be increased.

In another example, routine adaptation component 412 can determinewhether and how to adapt various aspects of a physical routine oractivity being performed by a user based on biochemical informationregarding a physiological state or condition of the user prior to and/orduring performance of the physical routine or activity. For example,prior to beginning a fitness routine or activity, a user can providebiochemical information (e.g., via an implanted biosensing device, aworn biosensing device, an external biosensing device, user inputfollowing an at home biosensing testing result, etc.) regarding abiochemical state of the user. As discussed supra, this information caninclude for example, information regarding the presence and/orconcentration of various biomarkers, physiological conditions/diseasesassociated with the presence and/or concentrations of the respectivebiomarkers, quality of health/functional status of various human bodysystems and organs, and susceptibility to various diseases orphysiological/physical conditions. For example, based on receivedbiochemical information for a user, analysis component 212 can determineinformation regarding a user's energy level, fatigue level, inflammationlevel, dehydration level, hunger level, electrolyte level, or metabolicstate.

Based on biochemical information received for a user prior to beginninga workout, routine adaptation component can be configured to adaptvarious aspect of the workout to account of the user's physiologicalstate/condition as determined based on the biochemical information. Forexample, routine adaptation component 412 can adjust the intensity ofthe workout, the particular exercises to be included in the workout, therange of motion of the exercises, the number or reps or amount of weightfor the respective exercises, a speed of the workout a duration of theworkout, etc. Routine adaptation component 412 can similarly adaptphysical fitness routine or activity during performance of theroutine/activity to account for similar biochemical feedback receivedfor the user during the workout (e.g., via the implanted, worn, orexternal biosensing devices employed herein).

Routine adaptation component 412 can also base a determination regardingadjustment of requirements of a fitness routine or activity based onuser profile information, including but not limited to: historicalperformance of the user in association with performance of monitoredfitness routines or activities, goals of the user, current physicalstate of the user, preferences of the user, and/or physical capabilitiesand limitations of the user. For example, where it is determined that auser is consistently completing reps on a weight machine at a requiredweight and the user has previously been able to lift more weight (in apast workout), routine adaptation component 412 can adapt therequirements of the routine to increase the number of reps and/orweight. In another example, where a user is continually nailingperformance of a certain yoga pose during performance of a selected yogaroutine, routine adaptation component 412 can change the selected yogaroutine to include a more advanced pose. When selecting the moreadvanced pose, routine adaptation component 412 can consider poses thatare safe for the user to perform in light of a known back injury andcertain yoga poses that the user prefers or does not prefer. In yetanother example, when a user is becoming extremely fatigued during acardio aerobics routine based on consistent performance below thephysical and physiological activity requirements of the routine, routineadaptation component 412 can adjust the intensity requirements of theaerobics routine by including easier moves the user prefers or change amuscle group focused on (e.g., from legs to abdominals) based onknowledge that the user has not worked the new muscle group in over aweek.

Routine adaptation component 412 can also consider contextualinformation when determining whether and how to adjust requirements of afitness routine or activity during performance of the fitness routine oractivity. For example, when a user is running outside and thetemperature increases by N degrees, routine adaptation component 412 canadjust the required speed or duration of the run to accommodate for theintensity increase associated with the rise in temperature. In anotherexample, during performance of a fitness activity, the user may providefeedback stating ‘this is too hard,’ or ‘this is too easy.’ Based onsuch feedback and information regarding whether and to what degree theuser is deviating from the requirements of the fitness activity, routineadaptation component 412 can determine whether and how to adjust therequirements of the fitness activity.

In response to a determination by routine adaptation component 412 tochange the requirements of a fitness routine or activity (e.g., changethe speed, intensity, exercise move, range of motion, difficulty level,muscle group worked, etc.) and/or change the fitness routine or activityall together (e.g., stop performance or select a new routine or activityfor performance by the user), routine adaptation component 412 can adaptthe requirements of the routine accordingly. As a result, adherence tothe fitness routine or activity will be evaluated (e.g., by analysiscomponent 212) based on the adapted requirements. In addition, theavatar presented to user can provide a visual and/or audible responsethat informs the user regarding the adaptation. In particular, based ona change to a fitness routine or activity determined by avataradaptation component 412, routine adaptation component 412 and/orreaction component 214 can determine a reaction/response formanifestation by the avatar that informs the user regarding the changeand/or facilitates performance of the routine with the change. Thisreaction can involve a verbal cue informing the user about the changeand/or a physical demonstration by the avatar of the routine or activitywith the change.

For example, the avatar can demonstrate a new move or demonstrate a moveat a different intensity while informing the user how to perform the newmove or the move at the different intensity level. In some aspects, whenan avatar is configured to perform the fitness routine for the user tomimic (e.g., an aerobics routine), the avatar can perform the fitnessroutine as adapted by routine adaptation component 412. For example,while performing a selected fitness dance routine, the avatar candynamically change the moves, intensity of the moves, music associatedwith the routine, etc. over the duration of the routine based ondeterminations by routine adaptation component 412.

In an aspect, fitness module 230 can include reporting component 416 toprovide real-time feedback regarding a user's performance of a fitnessroutine or activity to a remote entity, such as the user's humanphysical trainer or therapist at a remote location. For example,reporting component 416 can communicate any information received and/orprocessed by avatar guidance system to a remote entity via network as itis received and/or determined (e.g., in real-time). This information caninclude input 234 (e.g., raw physical and physiological activity data,user profile information, context information) received by avatarguidance platform, determinations regarding adherence or deviation froma fitness routine or activity performed by a user, anddetermined/manifested avatar responses.

The remote entity can also communicate with avatar guidance platform 202during performance of the fitness routine or activity by the user.Therefore, in an aspect, rather than having routine adaptation component412 automatically determine and effectuate changes to a fitness routineor activity as the user performs it, a remote entity can determine suchchanges based on received information. The remote entity can furthercommunicate the changes to routine adaptation component 412 and routineadaptation component 412 can effectuate the changes determined/requestedby the remote entity. In particular, based on the changes to a fitnessroutine determined and communicated to fitness module 230 by the remoteentity, adherence to the fitness routine or activity will be evaluated(e.g., by analysis component 212) based on the changes. In addition, theavatar presented to user can provide a visual and/or audible responsethat informs the user regarding the adaptation. In particular, based ona change to a fitness routine or activity determined by the remoteentity, routine adaptation component 412 and/or reaction component 214can determine a reaction/response for manifestation by the avatar thatinforms the user regarding the change and/or facilitates performance ofthe routine with the change.

Comparison demonstration component 414 is configured to generate acomparison visualization between an avatar performing a correctdemonstration of a fitness move and a representation of the user (e.g.,in an avatar form or a video replay of the user) as the user performedthe move incorrectly. For example, if the user repeatedly performs amove incorrectly, avatar comparison component 414 can generate a secondavatar configured to perform the move in the manner in which the userperformed it incorrectly (e.g., based on motion data and/or image datacollected for the user). In another aspect, the avatar comparisoncomponent 414 can collect video footage of the user as the userperformed the move incorrectly. Comparison demonstration component 414can then generate a side by side comparison visualization of an avatarperforming the move correctly and another avatar representing the user(e.g. or the video footage of the user) performing the move incorrectly.Thus, a side by side comparison of the user's own actions and thevirtual personal trainer model technique can be displayed.

FIG. 5 presents an example user interface 500 that facilitates receivinguser profile information in association with employment of avatarguidance system 200 for physical fitness purposes in accordance withvarious aspects and embodiments described herein. Repetitive descriptionof like elements included in respective embodiments of systems, methodsand interfaces described herein is omitted for sake of brevity.

In an aspect, a user can establish a profile with avatar guidance system200 that includes a variety of personal information related to the userand the user's usage of avatar guidance system 200. For example, whenemploying avatar guidance system 200 for fitness and health relatedpurposes, a user can be presented with interface 500 to facilitateestablishing a user profile and entering personal information related tothe user's health and fitness profile. For instance, interface 500include can information section 502 that facilitates receiving userinput regarding the user's physical profile, the user's physicallimitations, and the user's dietary restrictions. Interface 500 can alsoinclude section 504 that presents an interactive pictorialrepresentation of a human with the various muscle groups displayed. Inan aspect, using this section the user can select body parts and/ormuscle groups to indicate where the user has injuries and/or physicallimitations.

FIG. 6 presents an example user interface 600 that facilitates designinga custom fitness routine in association with employment of avatarguidance system 200 for physical fitness purposes in accordance withvarious aspects and embodiments described herein. Repetitive descriptionof like elements included in respective embodiments of systems, methodsand interfaces described herein is omitted for sake of brevity.

In various aspects, a user or an authorized supervisor of the user(e.g., the user's fitness trainer, physical therapist, doctor, parent,etc.), can design a custom workout to perform and have guided by anavatar presented to the user. For example, the user can design anexercise routine with various selected moves and characteristics andrequirements for the moves, such as number of repetitions, time betweenrepetitions, duration, frequency, range of motion, intensity, etc.Accordingly, the user can select/manipulate various variables to createa workout program specifically designed to match a user's needs,preferences, physical limitations, and goals.

Interface 600 provides an example tool for designing a fitness routinein accordance with aspects described herein. The left side of theinterface includes column 602 which includes a plurality of differentmenu categories to select in association with designing a customworkout. In an aspect, column 602 provides the capability to choose atype of workout desired from a plurality of different menu options thatcorrespond to categories of workout types, such as body part specific,cardio, chaos, core, golf specific, rehab, etc. For example, the‘sprint’ workout category is selected in example interface 600. The usercan further customize various aspects of a selected workout usingvarious potential sub-category options available via a drop down menufrom a selected menu category of column 602. These sub-categories canvary depending on the workout category selected. For example, thesesub-categories can correspond to different parts of a workout (e.g.,warm up, cool down, high intensity portion, cardio portion, etc.),different machines/tools or weights used in association with theworkout, different rounds or circuits of a workout, etc. In anotherexample, these sub-categories can correspond to information regardingwhen the workout is to be performed in association with a workoutprogram. In other aspect, the user can define sub-categories of aworkout type menu category.

As exemplified in interface 600 the user has selected the ‘sprint’workout for week 1 day 1 and week 1 day 2 of a workout program. Thesub-category week 1 day 1 is currently selected (as indicated byhighlighted column 610). This sub-category includes additional drop-downsub-categories corresponding to different parts of the workout,including circuit 1, circuit 2, circuit 3 and cool down. The user canselect each of the part of the workout and define exercise moves (andcharacteristics of the exercise moves) to include therein. For example,with respect to circuit 1, the user has selected the following exercisemoves: knees across, speed skaters, side kicks, upper cuts and rear deltpult. In column 604, the user can select the number of repetitions tocomplete for the respective parts of the workout. For example, each ofcircuit 1, circuit 2, circuit 3 and cool down are selected for repeatingonce (as indicated by the number 1 next to each part of the workoutunder column 604.

Column 606 corresponds to animation. In particular, a description of theselected exercise move appears in column 606 to indicate what the moveis at it will be demonstrated by an avatar presented to the user.Additional information describing how the animated avatar will appearwhen demonstrating the move in accordance with the definedcharacteristics of the move (e.g., speed, range of motion, etc.) canalso be included in column 606. Column 608 corresponds to the number ofexercise moves reps selected for completion. For example, the user hasselected to perform 19 repetitions of ‘knees across.’

In an aspect, section 616 of interface 600 facilitates defining variouscharacteristics of a selected exercise move and section 614 provides avideo animation demonstration of an avatar 620 performing the selectedexercise move in accordance with the selected characteristics. Forexample, on the left side of the interface, the ‘move knees across’exercise is currently selected (as indicated by highlighted row 612).Using section 616, the user define the various requirements for theexercise ‘knees across,’ such as number of repetitions, rate of therepetitions, time to complete the repetition, amount of time delaybetween repetitions, whether the exercise is a training exercise, rangeof motion, speed of the exercise, etc. It should be appreciated that avariety of different feature requirement selections can be provided insection 616 (e.g., heart rate, blood pressure, speed, etc.) which canalso vary depending on the selected exercise.

After a user has selected specific requirements for an exercise insection 616, the user can select the preview button 618 to see a previewdemonstration of the avatar 620 displayed in section/window 614performing the exercise in accordance with the specified requirements.In an aspect, as the user previews the avatar 620 performing theexercise, the user can change the viewing angle at which the avatar isdisplayed (e.g., of a virtual camera pointed at the avatar 620) to seehow the movements are demonstrated from different views of the avatar.For example, depending on the demonstrated exercise, a side or frontview may provide a more helpful perspective of the avatar model. Inaddition, section 616 includes a tips category 622, wherein the user canprovide personalized tips, instruction, or messages to be provided tothe user (e.g., in an audible format, spoken by the avatar, etc.) whenthe user performs the exercise. For example, the user can provide adescription of what the move is, how to perform the move correctly, whatnot to do when performing the move, a motivational quote, etc.). Thesetips can be configured for rendering to the user (e.g., in an audibleformat, spoken by the avatar, etc.) when the user performs the specificexercise move during the workout.

FIG. 7 presents an example user interface 700 that presents a user withan avatar to facilitate guiding the user through a selected fitnessroutine in accordance with various aspects and embodiments describedherein. Repetitive description of like elements included in respectiveembodiments of systems, methods and interfaces described herein isomitted for sake of brevity.

In an aspect, interface component 206 can generate interface 700 forpresentation to a user (e.g., via rendering component 236) duringperformance of a selected fitness routine or activity. Interface 700includes an avatar 712 displayed within a workout space 710. Theappearance of the avatar and/or the workout space are customizable(e.g., via avatar customization component 410). In an aspect, asdescribed above, the avatar 712 is configured to function as the user'spersonal trainer and provide instruction to the user regardingperformance of the selected fitness routine. In particular, the avatar712 is configured to respond in real-time to physical and physiologicalactivity input received for the user as the user performs the fitnessroutine in accordance with aspects described herein. For example, as theuser performs a fitness routine, the avatar 712 can provide variousreal-time reaction to the user's performance based on received andanalyzed physical and physiological activity data for the user (e.g., inaccordance with aspects described herein). For instance, the avatar cancall out commands, tell the user how to correct certain physicaldeviations from the routine (e.g., based on physiological data and/ormovement data for the user), provide physical demonstration of moves,motivate the user with facial and body movement expression, etc. Asdescribed above, these reactions can be specifically tailored to theuser's personal tastes, goals and abilities (e.g., based on user profileinformation) and/or the user's current context (based on receivedcontext information). In some aspects, the avatar 712 is configured toperform the fitness routine for the user to follow. In other aspects,the avatar can perform parts of the fitness routine during performanceof the fitness routine by the user when demonstration is necessary(e.g., to correct improper technique by the user).

Interface 700 can also include various tools and menu options tofacilitate customizing aspects of the workout routine and/or theappearance of the interface. For example, interface 700 can include a‘select environment section’ 702 wherein a user can select a backgroundenvironment (e.g., a beach, a city, mountains), for display in theworkout space 710. Interface 700 can also include section a ‘selectmusic section’ 704 which allows the user to select a type of music forplaying during a workout. In an aspect, this section can be linked toanother music database (e.g., the user's playlist or an external mediastreaming system) to allow for selection of a wide variety of musicoption. Section 706 includes a ‘modify exercise section’ wherein a usercan modify various aspects of an exercise prior to or duringperformance. For example, the user can select the intensity of theworkout (e.g., 60%, 80%, 100%, etc.). Modify exercise section 706 canalso provide for selection of a fitness program and or workout toperform and/or modification of a selected workout program or routine. Inorder to begin a selected workout, the user can select the begin button.In an aspect, prior to beginning the workout, the user can select thepractice button which takes the user through various simulations of therespective exercises in the routine as demonstrated by the avatar 712.

Interface 700 can also include various visual feedback areas (e.g., 714and 716) that provide the user with information regarding the user'sperformance during the workout. For example, interface 700 can include aheart rate meter 714 that displays the user's current heart rate next toa target heart rate range marker. In an aspect, the heart rate meter 120can change colors to provide an indication whether the user is above,below or at the target heart rate. In another example, area 716 canprovide real-time feedback regarding an amount of calories the user hasburned, the current exercise the user is performing, the number ofrepetitions completed and the current time point in the workout.Further, interface 700 can provide the user with various informationsections, such as a goal section 708 noting the user's goals and thegoals set by the user's trainer, and a limitation section 718 notingphysical limitations of the user.

FIG. 8 provides another example embodiment of fitness module 230 inaccordance with various aspects described herein. Repetitive descriptionof like elements included in respective embodiments of systems andmethods described herein is omitted for sake of brevity.

In accordance with the subject embodiment, fitness module 230 can alsoinclude avatar interaction component 802 and live group fitnesscomponent 804. Avatar interaction component 802 is configured tofacilitate generating and presenting an avatar to a user that isresponsive to not only the user's physical state and context but thephysical states and contexts of one or more other users. In an aspect,avatar interaction component 802 provides a virtual gaming experiencebetween two or more users. According to this aspect, the two or moreusers can request to participate in a gaming or interactive mode for aspecific monitored program, routine, or activity. Each of the users cangrant authorization of sharing information (e.g., in real-time ornon-real time) regarding their respective performance of the program,routine, or activity between one another's user sessions. Depending onthe nature of the program, routine or activity and the gaming orinteractive mode selected, any of the user's avatars can react to bothfeedback about themselves and feedback about the other users.

In particular, avatar interaction component 802 can receive and analyzefeedback for a primary user to which an avatar is presented and one ormore other users that are also employing avatar guidance system 200 toperform a similar monitored program, routine or activity. Based onfeedback indicating how the other one or more users are performing themonitored program, routine, or activity, avatar interaction component802 can direct analysis component 212 and reaction component 214 todetermine an appropriate reaction for the primary user's avatar. Forexample, a group of users at various different locations around theworld can be involved in a running club. Using avatar guidance system200 the respective users can set up group runs where they respectivelyset out to run a same distance together in a race format. For example,each of the users can select the same distance and terrain, start therun at the same time, and have their respective avatars serve as theirindividual coaches throughout the run. However, not only can therespective avatars respond and react to their respective user's feedback(e.g., as discussed herein), the respective avatars can also react tofeedback received for any of the participating users. For example,assuming the respective users names are Abby, Bobby, Carmen, Donna, andErin. Erin's avatar can tell Erin when to speed up, when to slow down,how to breath, etc. based on physical and physiological feedbackreceived for Erin and Erin's personal profile and health information. Inaddition, Erin's avatar can tell Erin when to speed up and when to slowdown based on how Abby, Bobby, Carmen, and Donna are performing (e.g.,when the goal is to win the race). For example, Erin's avatar can notewhere the other users are in terms of position, speed, fatigue,cramping, etc. Based on this information for example, Erin's avatar cantell Erin to slow down and save some energy for the next mile becauseshe is way ahead of the pack.

It should be appreciated that the above noted group race running exampleis merely one application of avatar interaction component 802. Forexample, avatar interaction component 802 can facilitate real-timeinteraction between two or more user's participating together in avariety of different fitness programs routines or activities whether thegroup participation is competitive in nature (e.g., a tennis match, aboxing match) or collaborative in nature (e.g., a soccer match where thegroup of users are on the same team).

Group fitness component 804 is configured to provide a group fitnessatmosphere for two or more users of avatar guidance system 200 that havechosen to participate in a group fitness routine. The routine isconsidered a group fitness routine because the two or more users haveselected to perform the same routine at the same time (or substantiallythe same time) and the two or more users have authorized sharing of oneor more aspects of their personal avatar experience with one anotherduring performance of the group fitness routine.

In an aspect, group fitness component 804 can facilitate generation of ashared user interface that is presented to the respective usersparticipating in the group fitness routine. In one aspect, the interfacecan include avatars representative of the respective users in the group.As the respective users perform the fitness routine, their respectiveavatars can mimic what the real users are doing (e.g., their movement,facial expression, sounds, etc.). Thus the interface presented to anyone of the respective users can resemble that of a real and live groupfitness classroom (or other share environment) in which all the usersare present together and performing the fitness routine together.

In another aspect, group fitness component 804 can facilitate generationof a shared trainer or coach to facilitate the group fitness routine.According to this aspect, each of the participating users can bepresented with the same avatar coach or trainer. This avatar can respondto user feedback for each of the respective users in accordance with theaspects described herein. However, the responses provided by the avatarbased on any one of the users feedback are collectively received by thegroup. For example, the avatar trainer can instruct one of the groupfitness participants to pick up the pace and then demonstrate a movementto encourage the participant to pick of the pace. This avatar responsedirected to one of the participants can be seen and heard by each of theparticipants in a live manner. Similarly, using avatar interactioncomponent 802, the shared trainer can respond to one of the groupmember's feedback on feedback from other users participating in thegroup fitness class. For example, the trainer can point out the perfectform exhibited by one of the group fitness members to the other groupfitness members. In another example, the avatar trainer can tell a firstgroup fitness member to kick his legs higher (based on the particularfitness move) like a second group fitness member is doing.

In another aspect, group fitness component 804 can provide for a sharedtrainer experience wherein each of the participants are monitored by thesame avatar respectively presented thereto and see and hear the sameavatar reactions in a live fashion. However, rather than reacting toindividual users, group fitness component 804 can direct routineadaptation component 412 to dynamically modify the routine based oncollective feedback from the users as a group. For example, in responseto a determination that the majority of the users in the group arebecoming extremely fatigued, the routine adaptation component 412 canadapt the group fitness routine accordingly. In response, the sharedavatar trainer can instruct the group regarding the adaptation of theroutine.

FIG. 9 provides an example embodiment of program guide module 232 inaccordance with various aspects described herein. Repetitive descriptionof like elements included in respective embodiments of systems andmethods described herein is omitted for sake of brevity.

Program guide module 232 is specifically configured to facilitateguiding or assisting a user with adhering to a program using an avatarin association with various aspects of avatar guidance platform 202. Inparticular, program guide module 232 is configured to guide a user withperforming a program having a plurality of predetermined actions orbehaviors for the user to perform (or not perform) over a period of timeto achieve a goal of the user. The period of time and goal can vary.However, program guide module 232 is particularly suited for guiding auser through a program that lasts several hours, days, weeks or evenmonths wherein user input 234 is received over the course of theprogram. For example, a suitable program can include a health and/orfitness program designed to cause the user to get in better shape andhealth over a period of three weeks, three months, a year, etc. Inanother example, a suitable program can include a dietary programdesigned to help a user lose or gain weight in a healthy manner. Anothersuitable program can include a stress reduction program designed to helpa user reduce and combat stress throughout her day. Other examples ofsuitable programs include an addiction recovery program, a mental healthprogram, an anger management program, and any conceivable program thatincludes performance or non-performance of specific user behaviors toachieve a physical/physiological or mental goal wherein adherence can bemonitored based on analysis of regularly received physical (e.g.,motion/movement data and image data) and physiological (e.g.,biometric/biochemical) information for the user and/or contextinformation for the user.

During performance of a monitored program, information regarding one ormore of the user's physiological state or condition, bodymovement/position, appearance, and context (e.g. location, time of day,people near the user), is dynamically received and analyzed in view ofknown requirements of the monitored program, and in some aspects userprofile information, to determine or infer whether, how and to whatdegree the user deviates and/or is likely to deviate from the monitoredprogram (in accordance with aspects described herein). Based on thisanalysis, reaction component 214 determines or infers a suitablereaction for manifestation by an avatar presented to the user and theavatar control component 208 and avatar generation component 226 causethe avatar presented to the user to perform the reaction. The reactionis configured to provide the user with guidance and/or motivation withadhering to the program and can include visual and audible reactions inthe avatar (e.g., speaking, moving, facial expression, tone of voice,etc.). In some aspects, the reaction can include initiation ofelectronic communication (e.g., sending a notification, initiating anemergency call), and provision of external media (e.g., images,articles, a map, videos, songs, etc.) to the user to facilitate guidingthe user with adherence to the program.

For example, a user can select a health and/or fitness program toperform and have monitored by avatar guidance platform 202. The healthand fitness program can include a specific fitness and diet regimen thatthe user is to follow for a period of 21 days. Over the course of theprogram, reception component 204 can receive information indicating whatfood and drink the user has consumed (e.g., as input directly by theuser, as provided/determined via various biometric sensors input, asdetermined via image analysis of food eaten by the user, etc.) and whenthe user has consumed it. Reception component 204 can also receivebiochemical information for a user throughout the program (e.g., viainput from the user, via one or more devices 104, via intelligentfitness device 118, via input from a remote laboratory service, etc.).As described supra, the biochemical information can related to one ormore characteristics about the user's physiological state, such aslevels of various biomarkers, known physiological conditions/diseasesexhibited by the user based on the various levels, and/or health statesof various human body systems. For example, throughout the health andfitness program, analysis component 212 can determine a user's bloodsugar levels (e.g., glucose levels), cortisol levels, cholesterollevels, vitamin/mineral levels, hormone levels, electrolyte levels,antioxidant levels, blood oxygen levels, etc. Analysis component 212 canalso determine a level inflammation experienced by a user, a hydrationlevel of the user, a stress level of the user, an energy level of theuser, a fatigue level of the user, a hunger level of the user, etc.

Reception component 204 can also receive and/or determine informationregarding how many calories the user has consumed and burned useractivity/motion levels, user sleep patterns, and physical performance offitness activities. Reception component 204 can also receive informationrelated to the user's context (e.g., where the user is located, whatpeople, places, things and events are associated with the location, timeof day, how the user is feeling, etc.). In addition, informationregarding the user preferences, physical health, physical measurements(e.g., height, weight, BMI, body fat, etc.), performance history,schedule, etc., can be included in an accessible profile for the user.

According to this example, based on the dynamically received user inputand the user profile information, analysis component 212 can determinewhen the user is deviating or is about to deviate from the health andfitness program. For example, analysis component 212 can determine orinfer whether the user is eating the required/appropriate food anddrink, whether the user is about to make bad food choices, whether theuser burned/is burning the required amount of calories in a workout,whether the user performed/is performing a required workout, whether theuser is performing the required workout in accordance with requirementsfor the workout, etc. In another example, analysis component 212 candetermine whether a user is exhibiting acceptable levels of variousbiomarkers and/or whether the one or more characteristics about theuser's physiological state indicate the user is deviating or is about todeviate from a requirement of the health/fitness routine. For example,analysis component can determine when a user's blood sugar is above anacceptable level for a particular time of the day or when a user hasreached a level of fatigue beyond an acceptable level for a particularworkout.

Based on such determinations and/or inferences regarding whether, howand to what degree the user is deviating or is about to deviate from therequirements of the health and fitness program, reaction component 214can determine an action for performance by the user that is known orlikely to either correct the deviation, minimize the impact of thedeviation and/or prevent the deviation. Reaction component 214 canfurther select, determine or infer a reaction for manifestation by anavatar presented to the user that is configured to direct or guide theuser to perform the action.

For example, a user can perform a general health and wellness programdesigned to improve the user's health. The health and wellness programcan include various requirements associated with the user's diet, sleeppatterns, activity patterns, physical exercise patterns, etc. Theprogram can also include various requirements regarding physiologicalcharacteristics the user should exhibit throughout the program. Forexample, these physiological characteristics can pertain to the user'santioxidant levels, glucose levels, cholesterol levels, blood pressurelevels, hormone levels, stress levels, energy levels, fatigue levels,inflammation levels, hydration levels, etc. During performance of theprogram, analysis component 212 can determine when the user'sphysiological state falls out of balance with that required by theprogram. For example, analysis component 212 can determine when a user'santioxidant levels have degreased below an acceptable level. Analysiscomponent 212 and/or reaction component 214 can further determine, basedon received information regarding a user's drug/alcohol ingestion thatthe user should reduce the amount of cigarettes and wine the user hasbeen recently ingesting to facilitate increasing the user's antioxidantlevels.

Reaction component 214 can further determine a reaction formanifestation by the user's avatar to direct the user to reduce theuser's consumption of cigarettes and wine. For example, reactioncomponent 214 can cause the avatar to speak a verbal reprimand to theuser regarding the user's drug/alcohol consumption and instruct the userto reduce the user's drug/alcohol consumption. The tone of voice, facialexpression and body language of the avatar can be determined to conveydisapproval and concern. In addition, the reaction component 214 canhave the avatar present the user (e.g., via a verbal instruction or viapresentation of a video, image, web article, etc.) with informationregarding the severe health consequences of smoking and drinking to thelevel exhibited by the user. In an aspect, the avatar can providepersonalized encouragement to encourage the user to reduce his or herdrug/alcohol consumption. For example, the avatar can remind the user ofhis or her goals for beginning the program or provide the user with animage of herself in a health state when her antioxidant levels wherehigh compared to an image of the user in her current health state.

Accordingly, the avatar can function as the user's personalized guideconfigured to follow the user and track the user's behavior andphysical/physiological state over the course of program and help theuser adhere to the program. To provide for various aspects of avatarguidance system 200 when applied to facilitate a guiding a user througha program, program guide module 232 can include program selectioncomponent 902, program builder component 904, avatar customizationcomponent 906, program adaptation component 908 and reporting component910. Program guide module 232 can also include various data objectsstored in memory 912 (which can be inclusive of memory 218) that arespecific to aspects of program guide module 232. These data objects caninclude information defining various programs 914 capable of beingmonitored by program guide module 232 and historical information forrespective users logging their performance of various programs 232 usingprogram guide module.

Similar to routine selection component 404 that provide for userselection of various preconfigured fitness routines for a user to selectfor performance, program selection component 902 provides for userselection of a program for performance by the user from a database ofknown programs 914 and associated requirements. For example, programsdatabase 914 can include a plethora of different programs arranged byvarious categorical types (e.g., health and fitness, weight loss, weightgain, marathon training, low sugar diet plan, stress reduction plan,sleep regulation programs, addiction recovery program, etc.). In anaspect, each of these programs can include a description of therequirements of the program and the goals of the program. Each of theseprograms can be designed for performance over a fixed period of time ora boundless amount of time. For example, a user can select a fitnessprogram designed as a 90 day challenge or select a stress reductionprogram or alcohol addiction recovery for performance on a daily basisuntil the user chooses to stop the program.

Similar to routine builder component 406 which facilitates building of acustom fitness routine by a user (or supervisor of the user), programbuilder component 904 facilitates designing a custom program. In anaspect, a user can select a preconfigured program and change certainvariables/requirements of the program to fit the user's needs. In otheraspects program builder component 904 can allow a user (or a supervisorof the user) to build a custom program from scratch. For example, a usercan set a schedule the user would like to adhere to, defining what theuser should do and when and how the user should respond to certainscenarios.

In another aspect, program builder component 904 can automatically adapta preconfigured program to fit the user's needs based on profileinformation for the user (e.g., user preferences, user health history,user physical abilities, user habits etc.) or program builder component904 can build a custom program (e.g., from scratch) for a user based onthe user's goals and other profile information for the user (e.g.,preferences, demographics, location, language, user, budgetaryconstraints, habits, health history, physical appearance andmeasurements, dietary restrictions, medications, schedule, and/orhistorical performance information (regarding past programs, routines,or activities tracked via avatar guidance system 200)). For example, auser can state that her goal is to lose 10 pounds in one month. Based onvarious information about the user's preferences (e.g., what foods theuser likes/dislikes, what types of physical exercise the userlikes/dislikes, how much and when the user likes to work out, etc.),demographics, location, language, user, budgetary constraints, habits,health history, physical appearance and measurements, dietaryrestrictions, medications, schedule, and/or historical performanceinformation, program builder component 904 can generate a custom healthand fitness program that is designed to cause the user to achieve hergoal if followed properly. Program builder component 904 can also employroutine builder component 906 to facilitate generating custom fitnessroutines to include in a health and fitness program.

In an aspect, the user can analyze the custom program and provide inputregarding modifications to the program. For example, a health andfitness program output by program builder component 904 could includesome requirements that the user would like to change. According to thisexample, the program could require the user to work out 5 days a weekwhen the user would prefer to work out 4 days a week. Based on inputrequesting the program to be modified to working out 4 days a week,program builder component 904 can automatically adjust otherrequirements of the program to maintain the user's goal. For example,program builder component 904 could adjust the intensity of the workoutsand/or modify her diet to account for the lost workout day. In otheraspect, program builder component 904 can request specific user input tofacilitate creating a custom program for the user. For example,depending on the type of program and the user's goal, program buildercomponent 904 can have the user fill out a form (e.g., or otherwiseprovide input) with answers to a specific set predetermined questionsassociated with the creation of the type of program. The user's answerscan be used to create/customize the program for the user.

In an aspect, in association with generation of a custom health andfitness program for a user, the user can provide program builder 904with an image of the user and/or avatar guidance platform 202 canreceive captured image data of the user (e.g., via visual capture device110). For example, two or three-dimensional image data can be capturedand received for a user. The captured image data can be provided toavatar guidance platform 202 in the form of a two or three dimensionalvisual replica/representation of the user or avatar guidance platform202 can employ the captured image data to generate a be a visualreplica/representation of the user (e.g., a two or three-dimensionalavatar representation of the user). In addition to image data, physicalmeasurements (e.g., regarding user height, weight, dimensions of bodyparts, BMI, etc.) can be received for the user and/or detected via theimage data. This measurement data can facilitate generation of a two orthree dimensional visual representation of the user.

According to this aspect, the user can provide input regardingcharacteristics of body features that the user would like to change andhow the user would like them to change using the image of the userand/or the visual representation of the user. For example, the usercould circle or target certain body parts and indicate how the userwould like them to change. According to this example, the user couldpoint to her stomach and indicate she would like to trim off inches fromher waist or develop a six pack. In another example, the user couldpoint to her arms and indicate she would like to increase the diameterof her biceps. In an aspect, this input can be received from the user bydirectly allowing the user to draw on/mark up the image/visualrepresentation of the user. For example, the user could place lines ormarks on parts of the user's body indicating how the user would like thebody parts to appear.

Based on received input indicating characteristics of body features thatthe user would like to change and how the user would like them to changebased on user input regarding an image or visual replica of the user,user profile information, and any other user input regardingrequirements for the program, (e.g., duration of the program,preferences for the program, exercises and foods the you would likeincluded/excluded from the program, etc.), program builder component 904can design a custom diet and/or exercise program for the user. Thecustom diet and exercise program is specifically tailored to achieve theuser's goals (e.g., the changes to the user's physical appearance aspointed on by the user with respect to an image or visual representationof the user).

In another aspect, in association with generation of a custom health andfitness program for a user, the user can provide program builder 904with an image or visual representation of physical features the userdesires. For example, the user could provide program builder component904 with a picture of an athlete and request to have a program designedfor the user that will cause the user to look like the athlete. Inanother example, the user could provide program builder component 904with an image of a supermodel and indicate that she would like totransform her body to look like the supermodel. In another example, theuser could provide program builder component 904 with a picture of aspecific body part and request a program that would help the usertransform his or her corresponding body part to appear like that in thepicture. For example, the user can provide program builder component 904with an image of a person's shoulders and indicate he would like hisshoulder to look like the picture.

According to this aspect, based on received input indicatingcharacteristics of body features that the user would like to have basedon image data representing those characteristics, user profileinformation, and any other user input regarding requirements for theprogram, (e.g., duration of the program, preferences for the program,exercises and foods the you would like included/excluded from theprogram, etc.), program builder component 904 can design a custom dietand/or exercise program for the user. The custom diet and exerciseprogram is specifically tailored to achieve the user's goals (e.g., thechanges to the user's body features to have the characteristics of thoseprovided in the image data.

Similar to avatar customization component 410, Avatar customizationcomponent 906 can provide for customizing the appearance and personalityof an avatar selected by the user to guide the user through a program.For example, the user can choose the gender, age, ethnicity, language,clothing, voice, and personality of their avatar. The user can alsochoose an avatar from a database of preconfigured avatar's havingvarious appearances and personalities. In an aspect, the avatar canembody a persona selected by the user, such as the user's conscience(e.g., the voice of reasoning or angel on the user's shoulder), theuser's friend, the user's mother, the user's coach/trainer, the user'sdoctor, the user's therapist, etc. In another aspect, the user canselect multiple avatars to help guide the user with different aspects ofa program. For example, with respect to a diet and exercise program, theuser can select a first avatar to facilitate adherence to aspects of theprogram related to the user's diet and a second avatar to facilitateaspects of the program related to the user's exercise.

Similar to routine adaptation component 412, program adaptationcomponent 908 can facilitate dynamically adapting aspects andrequirements of a program during the course of the program. Programadaptation component 908 can adapt aspects and requirements of a programbased on a variety of aspects including but not limited to: userphysical and physiological activity data and context data, referencedata for the user physical and physiological activity data and contextdata for the program, and user profile information (e.g., userpreferences, user goals, past performance history, etc.). For example,program adaptation component 908 can adjust and/or dynamically determinenew or modified requirements of a program based on a determination thatthe requirements are too difficult or too easy because the user isconsistently not meeting or exceeding the requirements of the program,respectively.

In another example, program adaptation component 908 can analyze a user′history of performance with respect to adherence to a program anddynamically adapt the requirements of the program to account for theuser's past performance. For example, where a user ran an extra 5.0miles on the workout the day before, program adaptation component 908and/or routine adaptation component 412 can change the requirements oftoday's workout to account for the extra 5.0 miles from the day before.For example, where today's workout was supposed to be a longer run,program adaptation component can determine that the user's goals (e.g.,to get in shape for an upcoming race) would be better suited if theworkout today was switch to yoga (e.g., to prevent injury due to overexercise). In another example, program adaptation component 908 canadapt current requirements of a user's program based on how the user isfeeling (e.g., sore, sick, energized, sad, tired, etc.), an amount ofsleep received, an amount of activity of the user that day/week, anamount of stress the user is experiencing, what the user's currentphysiological state is, what the user's current context is, what theuser ate that day (e.g., ate an extra number of calories, earn an extranumber of jumping jacks), unexpected changes to the user's schedule,unexpected injuries, events in the user's life, how the user isprogressing in the program, resources available to the user (e.g., groupmeetings, therapy, exercise equipment, food options, etc.

In another example, program adaptation component 908 is configured toregularly (e.g., once an hour, twice a day, once a day, once a week,etc.) evaluate a user's progress through a program in view of the user'sgoals and determine whether and how to adapt the requirements of theprogram based on the user's progress. For example, when a user's ishoping to lose X amount of weight and the user is not on target toachieve this goal if the user adheres to the current requirements of theprogram for the remainder of the program, program adaptation component908 can adjust the dietary and/or exercise requirements of the programto ensure the user will achieve her goal.

Similar to reporting component 416, reporting component 910 can sendinformation regarding a user's performance of a program in real-time orsubstantially real-time to another entity (e.g., another user, anothersystem) for interpretation thereof. For example, with respect to drugrehabilitation program, reporting component 910 can send informationregarding a user's adherence or deviation from the program to the user'stherapist in real-time. In another example, with respect to a diet andexercise program, reporting component can send information regarding theuser's performance of the program to the user's real life (e.g., human)trainer in real-time.

In view of the example systems and interfaces described herein, examplemethods that can be implemented in accordance with the disclosed subjectmatter can be further appreciated with reference to flowcharts in FIGS.10-12. For purposes of simplicity of explanation, example methodsdisclosed herein are presented and described as a series of acts;however, it is to be understood and appreciated that the disclosedsubject matter is not limited by the order of acts, as some acts mayoccur in different orders and/or concurrently with other acts from thatshown and described herein. For example, a method disclosed herein couldalternatively be represented as a series of interrelated states orevents, such as in a state diagram. Moreover, interaction diagram(s) mayrepresent methods in accordance with the disclosed subject matter whendisparate entities enact disparate portions of the methods. Furthermore,not all illustrated acts may be required to implement a method inaccordance with the subject specification. It should be furtherappreciated that the methods disclosed throughout the subjectspecification are capable of being stored on an article of manufactureto facilitate transporting and transferring such methods to computersfor execution by a processor or for storage in a memory.

FIG. 10 illustrates a flow chart of an example method 1000 forgenerating a personalized avatar that is responsive to a user's physicalstate and context, in accordance with various aspects and embodimentsdescribed herein. At 1002, information about a user is received duringperformance of a physical routine by the user (e.g., via receptioncomponent 204). The information includes physiological information andanatomical movement information. For example, as a user performs aworkout routine or a particular sports activity, information regardingthe user's heart rate, blood pressure, perspiration, cortisol level,glucose level, etc. can be received. In addition, information regardingwhat movements the user is performing, how the user's body is positionedduring the movement and intensity of the movement can be received. At1004, it is then determined whether and how the user deviates fromrequirements of the physical routine based on comparison of theinformation to reference physical and physiological activity metrics forthe physical routine (e.g., by analysis component 212). For example,analysis component can determine that the user's physiological stateindicates that the user does not comply with what the user'sphysiological state should be for a particular exercise of the physicalroutine. In another example, analysis component can determine that theuser's body position during a particular exercise yoga exercise is ontarget or not on target with how it should be.

At 1006, a response is determined for performance by avatar displayed tothe user, based on and in response to, a determination regarding whetherand how the user deviates from the requirements of the physical routine(e.g., via reaction component 214). The response is configured tofacilitate adherence to the requirements of the physical routine. Forexample reaction component 214 can determine a response that includesprovision of spoken instruction and physical demonstration by the avatarregarding an action for the user to perform that corrects a deviation.According to this example, where the user's pace and intensity of anexercise move is below the required level, the avatar response caninclude act of performance of the exercise move at the requiredintensity level with exclamatory words of encouragement spoken in anenthusiastic tone telling the user to “pick up the pace, let's go let'sgo!” Once the user corrects the deviation, the avatar's behavior canchange accordingly (e.g., the avatar can go back to evaluating theexercise as opposed to demonstrating, and the avatar can congratulatethe user for adhering to the requirements of the fitness routine). At1008, manifestation of the response is initiated, in response to thedetermination thereof, by the avatar as displayed to the user during theperformance of the physical routine (e.g., by the avatar controlcomponent 208, and the avatar generation component 226). In other words,the avatar presented to the user is caused to perform the response.

FIG. 11 illustrates a flow chart of another example method 1100 forgenerating a personalized avatar that is responsive to a user's physicalstate and context, in accordance with various aspects and embodimentsdescribed herein. At 1102, information about a user is received duringperformance of a physical routine by the user (e.g., via receptioncomponent 204). The information includes physiological information andanatomical movement information. For example, as a user performs aworkout routine or a particular sports activity, information regardingthe user's heart rate, blood pressure, perspiration, cortisol level,glucose level, etc. can be received. In addition, information regardingwhat movements the user is performing, how the user's body is positionedduring the movement and intensity of the movement can be received. At1104, it is then determined that the user's performance deviates fromphysical and physiological activity requirements for the physicalroutine based on comparison of the information to reference physical andphysiological activity metrics for the physical routine (e.g., byanalysis component 212). For example, analysis component can determinethat the user's physiological state indicates that the user isconsistently (with respect to a deviation frequency threshold) fallingbelow physical intensity requirements for the routine (e.g., based onheart rate, perspiration, fatigue, range of motion, etc.).

At 1106, a modification to the physical routine is determined during theperformance of the physical routine by the user based on how the userdeviates from the physical routine (e.g., by routine adaptationcomponent 412). For example, the routine adaptation component candetermine that the user should change the required exercises to aneasier option. At 1108, a response for performance by an avatardisplayed to the user is determined that informs the user regarding themodifications and informs the user how to perform the physical routinebased on the modification (e.g., via reaction component 214). Theresponse is configured to facilitate adherence to new requirements ofthe modified physical routine. At 1118, manifestation of the response bythe avatar is initiated in response to the determination thereof, by theavatar as displayed to the user during the performance of the physicalroutine (e.g., by the avatar control component 208, and the avatargeneration component 226).

FIG. 12 illustrates a flow chart of another example method 1200 forgenerating a personalized avatar that is responsive to a user's physicalstate and context, in accordance with various aspects and embodimentsdescribed herein. At 1202, a graphical user interface is generated thatincludes an avatar configured to react to a user during performance of aphysical routine by the user in response to a determination that theuser deviates from a physical requirement of the routine based onanalysis of biometric and movement data about the user generated duringperformance of the physical routine (e.g., via interface component 206).At 1202, the avatar is caused/directed to perform a reaction thatprovides instruction to correct the manner in which the user deviatesfrom the physical routine in response to reception of control commandsdefining the reaction, wherein the reaction comprises at least one ofspeech or movement (e.g., via avatar generation component 226). At 1206,the graphical user interface is displayed to the user with the avatarperforming the response (e.g., via rendering component 226).

IV—Example Avatar Visualization System

In one or more aspects, a system is provided that includes a receptioncomponent configured to receive information corresponding to a user'sphysical appearance and physical health, an analysis componentconfigured to determine or infer one or more changes to the user'sphysical appearance based on predicted performance of a health andfitness program by the user and the user's physical health, and avisualization component that is configured to generate a visualrepresentation of the user based on the information and the one or morechanges to the user's physical appearance.

In another aspect, a method is disclosed that includes receivinginformation corresponding to a user's physical appearance and physicalhealth, predicting one or more changes to the user's physical appearancebased on predicted performance of a health and fitness program by theuser and the user's physical health, and generating a visualrepresentation of the user based on the information and the one or morechanges to the user's physical appearance.

In yet another aspect, a method is provided that includes using aprocessor to execute the computer executable instructions stored in amemory to perform the various acts. These acts include receivinginformation corresponding to a user's physical appearance and physicalhealth, predicting one or more changes to the user's physical appearancebased on predicted performance of a health and fitness program by theuser and the user's physical health, generating a visual representationof the user based on the information and the one or more changes to theuser's physical appearance, and displaying the visual representation viaa graphical user interface.

In various additional implementations, a method is provided thatincludes receiving, by a system comprising a processor, biochemicalinformation about a physiological state or condition of a user,including information identifying a presence or a status of one or morebiomarkers, determining, by the system, one or more characteristics ofthe physiological state or condition of the user based on theinformation identifying the presence or the status of the one or morebiomarkers, adapting an appearance of an avatar presented to the userbased on the one or more characteristics to reflect the one or morecharacteristics.

FIG. 13 presents an example avatar visualization system 1300 thatfacilitates visualizing how the user will appear in response to adheringto a health and fitness program in accordance with various aspects andembodiments described herein. System 1300 can include same or similarfeatures and functionalities as system 100. In an aspect, system 1300employs the architecture of system 100, including one or more of thevarious components/devices of system 100, wherein avatar visualizationplatform 1302 corresponds to avatar platform 114. Avatar visualizationplatform 1302 can thus include same or similar features andfunctionalities as avatar platform 114. Repetitive description of likeelements employed in respective embodiments of systems and interfacesdescribed herein are omitted for sake of brevity.

Avatar visualization system 1300 can include avatar visualizationplatform 1302, input 1322, rendering component 1324 and one or moreremote sources/systems 1326. Input 1322, rendering component 1324 andthe one or more remote sources/systems 1326 can respectively correspondto input 234, rendering component 236 and one or more remotesources/systems 238 discussed with respect to FIG. 2. For example, theinput 1322 can include physical (e.g., movement/motion and image data),physiological (e.g., biometric/biochemical), contextual informationabout a user. The input 1322 can also include information included in auser profile of the user (e.g., health history, demographics,preferences, etc.).

In various embodiments, avatar visualization platform 1302 is configuredto generate a visual representation or replica (e.g., an avatar) of auser based on received appearance data for the user, receivedphysiological information for the user, and known health information forthe user (including physical characteristics of the user andphysiological characteristics of the user). In particular, avatarvisualization platform 1302 can generate an avatar that is a visualreplica of the user as the user currently appears. Accordingly, as theuser's appearance changes over the course of performance of a health andfitness program (or other suitable program), the appearance of theavatar can also change to provide a mirrored visualization of thechanges in the user. For example, throughout the course of the program(e.g., on a continuous basis, one an hour, once a day, etc.), anappearance of the user can be evaluated, captured and imparted to theavatar. Thus in essence, the user's avatar can resemble a mirror imageof himself over the course of a program.

In some embodiments, avatar visualization platform 1302 is configured togenerate an avatar that has an appearance and/or behavior that reflectsa current physiological state or condition of the user. According tothese embodiments, reception component 1304 can receivebiometric/biochemical information for a user. For example, as describedsupra, the biometric/biochemical information can include but is notlimited to information regarding a user's: glucose level, cortisollevel, potassium level, blood oxygen level, blood alcohol level,inflammation level, nitric oxide level, folic acid level, calcium level,magnesium level, creatine kinase level, vitamin B12 level, vitamin D,ferritin level, total cholesterol level, hemoglobin level, HDL level,LDL level, triglycerides levels, fatty acid levels, insulin level,hormone levels (e.g., thyroid hormones (thyroid-stimulating hormone(TSH), metabolic hormones, reproductive hormones, etc.), liver enzymelevels, electrolyte levels (e.g., sodium, potassium, chloride, etc.),antioxidant levels, platelet levels, white blood cell concentration, redblood cell concentration, and iron levels. In another example, thebiochemical information can identify presence and concentration of drugresidues in the body, pathogens in the body, bacteria in the body, andantibodies. Additional biometric information can include informationregarding a user's heart rate, blood pressure, V02 max, temperature,respiration, and perspiration.

As discussed infra, this biochemical/biometric information can bereceived from a variety of sources, including biometric sensing devicesworn by or implanted into a user (e.g., devices 104), external biometricdetection devices (e.g., intelligent fitness device 118) employed by theuser (e.g., handheld spectroscopic devices, blood pressure cuffs, etc.),laboratory reports received electronically from an external system, anddirect user input (e.g., following performance of a home biometrictest). According, the biometric/biochemical information can be receivedprior, during (e.g., in real-time), and/or following performance of amonitored routine, activity, or program, in accordance with the variousaspects and embodiments described herein.

Avatar visualization platform 1302 can include a processing module 1306that can perform same or similar functions as processing module 210. Forexample, processing module 1306 can include an analysis component 1308that is configured to perform same or similar functions as analysiscomponent 212. In particular, based on the receivedbiochemical/biometric information for a user (e.g., includinginformation identifying a presence or a status of one or morebiomarkers), analysis component 1308 can determine one or morecharacteristics of a physiological state or condition of the user. Forexample, based on detected presence of a particular biomarker, analysiscomponent 1308 can determine a known medical condition or diseaseexhibited by the user. In another example, analysis component 1308 candetermine whether and to what degree levels of the respective biomarkersare abnormal (e.g., with respect to predefined values or ranges fornormal vs. abnormal levels). Analysis component 1308 can furtherdetermine or infer known conditions or diseases of the body that areattributed to the abnormal levels of the respective biomarkers.

In another example, based on the information identifying the presenceand/or status/level of various biomarkers, analysis component 1308 candetermine one or more characteristics associated with a state of a humanbody system of the user, such as whether the body system is in a healthystate or an unhealthy state (and varying degrees between severelyunhealthy or extremely healthy) and why, whether the system isfunctioning properly or improperly and why, whether the system isfunctioning at a desired performance level (e.g., in association with aparticular physical activity), etc. These human body systems include atleast one of: the integumentary system, the skeletal system, the nervoussystem, the cardiovascular system, the endocrine system, the muscularsystem, the lymphatic system, the respiratory system, the urinarysystem, the excretory system, the reproductive system, the digestivesystem, and the immune system.

Avatar visualization platform 1302 can further include a visualizationcomponent 1318 that is configured to adapt an appearance of the avatarbased on the one or more characteristics of the physiologicalstate/condition of the user to reflect the one or more characteristicsof the physiological state/condition of the user. For example,visualization component 1318 can adapt a color of the avatar, a size ofthe avatar, a shape of the avatar, or a texture of the avatar, based onthe one or more characteristics. In another example, avatarvisualization component 1318 can change an appearance of features/bodyparts of the avatar based on the one or more conditions. For example,visualization component 1318 can add or remove wrinkles or lines to theavatar, change the avatar's hair length, thickness, or color, change anappearance of the avatars face (e.g., puffy vs. refreshed, add bagsunder the eyes, etc.), change a color of the avatars skin, add or removesun spots or freckles to the avatars skin, add or remove acne from theavatar's skin, add or remove bruises and varicose veins from theavatar's skin, etc.

In one implementation, when the one or more characteristics of thephysiological state/condition of the user relate to a characteristic ofa human body system of the user (e.g., the integumentary system, theskeletal system, the nervous system, the cardiovascular system, theendocrine system, the muscular system, the lymphatic system, therespiratory system, the urinary system, the excretory system, thereproductive system, the digestive system, or the immune system) thevisualization component 1318 can highlight one or more parts of a bodyof the avatar based on the characteristic of the human body system ofthe user to reflect the characteristic of the human body system. Forinstance, the visualization component 1318 can be configured to causethe one or more parts of the body of the avatar area to change color,flash, or change in size or shape.

In an aspect, avatar visualization component 1318 can highlight the oneor more body parts, including but not limited to: organs, muscles,tissues, bones, ligaments, veins, etc., associated with a particularhuman body system to reflect a current health state of the human bodysystem. The health state of the respective body systems can bedetermined based on in part on the levels of various biomarkersassociated with proper and optimal health functioning of the respectivebody systems. In an aspect, the health state can identify varying levelsof health (e.g., extremely unhealthy vs. extremely healthy and varyingdegrees therebetween) of the body system or a type of disease orcondition effecting the body system.

For example, visualization component 1318 can be configured to highlightone or more components of the avatar's cardiovascular system with aspecific color or flashing speed to indicate the cardiovascular systemis in an unhealthy state, and/or the degree to which the system is in anunhealthy state (e.g., red for very unhealthy, pink medium unhealthy).In another example, visualization component 1318 can highlight one ormore components of the avatar's cardiovascular system with a specificcolor or flashing speed to indicate a level the user is at risk for acardiovascular disease (CVD). In another example, the visualizationcomponent 1318 can highlight one or more parts of the avatar'scardiovascular system to indicate a level of a detected biomarker thatreflects on the current health state the cardiovascular system. Forexample, visualization component 1318 can highlight various componentsof the avatar's cardiovascular system to reflect a current bloodpressure, cholesterol level, blood alcohol level, or glucose level ofthe user, all of which have an effect a human's cardiovascular health.

In another example, visualization component 1318 can be configured tohighlight components of the avatar's integumentary system with aspecific color or flashing speed to indicate a physiological conditionor disease affecting the user's integumentary system (e.g., a rash, aninfection, an insect bite, sunburn, skin cancer, etc. The integumentarysystem is the organ system that protects the body from various kinds ofdamage, such as loss of water or abrasion from outside. The systemcomprises the skin and its appendages (including hair, scales, feathers,hooves, and nails). The integumentary system has a variety of functions;it may serve to waterproof, cushion, and protect the deeper tissues,excrete wastes, and regulate temperature, and is the attachment site forsensory receptors to detect pain, sensation, pressure, and temperature.In most terrestrial vertebrates with significant exposure to sunlight,the integumentary system also provides for vitamin D synthesis.

In another example, visualization component 1318 can be configured tohighlight components of the avatar's skeletal system with a specificcolor or flashing speed to indicate a physiological condition or diseaseaffecting the user's skeletal system, such as osteoporosis,osteomalacia, arthritis, rickets, tendinitis, bursitis, leukemia, etc.In another example, visualization component 1318 can be configured tohighlight components of the avatar's endocrine system with a specificcolor or flashing speed to indicate levels of various hormones in theuser's body. In another example, visualization component 1318 can beconfigured to highlight components of the avatar's muscular system witha specific color or flashing speed to indicate a level of lactic acid ormuscle fatigue experienced by a user. In another example, visualizationcomponent 1318 can be configured to highlight components of the avatar'sthe immune system with a specific color or flashing speed to indicate acurrent health status of the user's immune system, to indicate the userhas a virus or infection, to indicate the is immunosuppresed, etc.

For example, FIG. 14 presents example representations 1402 and 1402 ofan avatar that can be presented to a user in accordance with variousaspects and embodiments described herein. Representation 1401 includesan avatar with various internal components of a human body representedin different colors. In an aspect, the colors of the various internalcomponents of the avatar depicted in representation 1401 indicate thatthe user in a healthy state. On the contrary, representation 1402includes the avatar with various components of the circulatory systemhighlighted in a dark green. In an aspect, these components of theavatar's circulatory system are depicted in dark green to signify theuser is exhibiting various indicators of cardiovascular disease.

In various embodiments, rather than targeting specific bodyparts/components based on identified conditions orbiochemical/physiological states of those body parts, visualizationcomponent 1318 can be configured to cause a user's avatar to appear in aspecific color based on various physiological states/conditionsaffecting the user. Each color can indicate a particular physiologicalstate/condition affecting the user. For example, based on analysis ofone or more biomarkers, analysis component 1308 can determine a level ofinflammation experienced by the user, a level of fatigue experienced bythe user, or an energy level experienced by the user. Visualizationcomponent 1318 can further cause a user's avatar to appear a particularshade of red to indicate the degree of inflammation experienced by theuser, a particular shade of blue to indicate a level of fatigueexperienced by the user, and a particular shade of yellow to indicatethe energy level of the user. In another example, analysis component1308 can determine a degree of hydration of the user, whether the userhas an electrolyte imbalance, and antioxidant levels of the user, or aglucose level of the user and visualization component 1318 can adapt acolor of the avatar to reflect the respective physiological states.Still in yet another example, analysis component 1308 can determine auser's blood alcohol level, drug level, stress level (e.g., based onvarious stress related biomarkers), heart rate, and blood pressure, andvisualization component 1318 can adapt a color of the avatar to reflectthe respective physiological state.

For example, FIG. 15 depicts a plurality of avatars presented indifferent colors. Each color can correspond to a particularphysical/physiological state or condition exhibited by a user (e.g.,over the course of a monitored routine, activity or program). Forexample, a natural colored avatar can indicate the user is in an optimalhealth state. A pink avatar can indicate the user is exhibiting a levelof fatigue above a desired level. A red avatar can indicate the user isexhibiting severe levels of inflammation and exhaustion or injury. Ayellow avatar can indicate the user has high glucose levels, highcholesterol levels, low antioxidant levels, etc. A green avatar canindicate the user is sick or becoming ill. A blue avatar can indicatethe user is dehydrated or has an electrolyte imbalance. Accordingly, bylooking at the color of one's avatar, a user can quickly and easilyunderstand what is physiologically occurring in the user's body andreact accordingly. It should be noted that the above described colorcorrespondences to certain physiological states/condition of a user amerely exemplary. A wide variety of colors and different shades ofcolors can be used to signify one or more characteristics of a user'scurrent physiological state.

Visualization component 1318 can cause the one or more parts of the bodyof the avatar to change in size or shape based on determinedphysiological states/conditions affecting a user (e.g., as determinedbased on received biometric/biochemical data for the user). For example,visualization component 1318 can cause certain body parts of a user thatare inflamed to increase in size. In response to a determination that auser is bloated, visualization component 1318 can cause an avatar'sstomach to appear bloated. Visualization component 1318 can also adaptthe size of a user's stomach based on how recently the user has eaten(e.g., a full belly can be depicted larger than an empty belly).Visualization component 1318 can also adapt the size of various organsto reflect a degree to which the respective organs are underperformingor over performing. For example, visualization component 1318 canincrease or decrease the size of an avatar's heart based an increase ordecrease in a user's heart rate, respectively. In another example,visualization component 1318 can increase or decrease a size of anavatar's head based on a level of stress experienced by the user.

In some implementations, a particular appearance of a user's avatar canalso reflect an actual physical appearance of the user based on capturedimage data for the user and information regarding the user's height,weight, BMI, etc. For example, a user's avatar can be adapted toresemble an actual current appearance of the user (e.g., mirror image orsubstantially mirror image). Based on this example, visualizationcomponent 1318 can generate an avatar that has a physical externalappearance of the user based on captured image data of the user. Inother aspect, a user's avatar can correspond to a general male or femalehuman having one or more external physical feature similarities to theuser.

Visualization component 1318 can also be configured to adapt a behaviorof an avatar based on one or more characteristics of a user'sphysiological state or condition (e.g., as determined based on receivedbiometric/biochemical information for a user). For example,visualization component 1318 can change a demeanor or body language of auser to reflect an energy level (e.g., tired, high strung), mood, orintoxication level of the user. In another example, visualizationcomponent can cause a user's avatar to perform certain predefinedbehaviors based on a physiological state/condition of a user. Forexample, when a user is experiencing high stress level, visualizationcomponent 1318 can cause a user's avatar to appear stressed and bite hisor her nails. When a user is exhausted or tired, visualization component1318 can cause a user's avatar to lie down. In another example, when auser is hungry, visualization component 1318 can cause a user's avatarto appear holding onto a knife and fork and licking his or her lips.

The behavior of a user's avatar can also reflect actual behaviors of theuser. For example, the avatar can be configured to mimic the movementand behavior of the user based on received input indicating a movement,motion or body position of the user. According to this example, if auser is walking, sitting, running, eating, etc., the avatar can likewiseperform the movements or actions of walking, sitting, running, eating,etc. While performing these movements/behaviors, visualization component1318 can also cause the avatar to have an appearance, facial expression,body language, tone of voice, etc., that reflect the currentphysiological states/conditions affecting the user. In addition, thefacial expression, tone of voice, and body language of a user's avatarcan change to reflect a user's current physiological state or condition.For example, if a user's is tired, the user's avatar can speak slowerand at a lower volume and toner relative to a speed and volume when theuser is energized.

The above described embodiments provide a user with a visual indicatorof the user's physiological health and physical health at. Theappearance and behavior of the avatar can change at any point in timebased on reception of new user input. Thus depending on the mechanismsemployed to receive the user input (e.g., manual user input, inputreceived from external devices or testing service employed by the user,input receive by worn or implanted biosensing devices, etc.), a user'savatar can constantly adapt throughout the user's day or workout, oradapt each time new readings are taken (e.g., once a day, once a week,etc.). As a result, the user can quickly and easily look at his or heravatar and see a clear visual indication of what is going on with his orher mental and physical health and be encouraged to constantly andconsciously adapt his or her behavior to improve or optimize the user'smental and physical well being.

In one embodiment, avatar visualization platform 1302 can also include asharing component 1328 to facilitate sharing of a user's avatar withother users, such as via a virtual social networking community, anelectronic notification message, or other form of electroniccommunication posting/sharing. In particular, as described above, auser's avatar can have an appearance and/or behavior that reflect acurrent physical/physiological state of a user and/or physicalappearance of a user. Accordingly, a user can control the behavior andappearance of his or her avatar based on the user's lifestyle to reflectthe user's healthy or unhealthy dietary habits, fitness practices, sleephabits, drug/alcohol intake, etc. As a means of motivation to improveone's mental and physical health or to achieve a desiredphysiological/physical state and/or appearance, a user can share his orher avatar with other users, for example via a social networkingcommunity, other virtual community, or in an electronic message. Forexample, a user's avatar can appear as the user's social networkingsymbol or icon as a representation of the user. The appearance and/orbehavior of the avatar when employed as the user's social networkingsymbol or icon can continuously update in response to changes in theuser's physical/physiological state and appearance. Accordingly, otheruser's will be able to clearly see when a user's physical and/or mentalhealth is deteriorating and/or improving and provide encouragement orpraise to keep the user on track to achieve his or her mental/physicalhealth goals (e.g., such as those defined by a program the user haselected to follow).

In various embodiments, avatar visualization platform 1302 is furtherconfigured to generate a visual representation of the user that is aprediction of how the user will appear at a future point in time basedon performance of a health and fitness program by the user. For example,the user can select, (and/or design, or otherwise be assigned) aspecific health and fitness program for performance using fitness module1302 (wherein fitness module 1302 can include same or similar featuresand functionalities of fitness module 230). Using avatar visualizationplatform 1302, the user can be provided a visual representation thatdemonstrates how the will predicatively look afterperformance/completion of the program if the user adheres to therequirements of the program. In addition, the user can select varioustime points in the program (e.g., after week 1, after week 2, after week3, etc.) and avatar visualization platform 1302 can generate a visualrepresentation of the user that demonstrates how the user willpredicatively look at the respective time points if the user adheres tothe requirements of the program.

This feature of avatar visualization platform 1302 allows a user todynamically pick and choose different health and fitness programs and/orchange different variables of a health and fitness program and see howthe user would appear in the future based on the selected health andfitness program and/or the different variables. Accordingly, a user canselect a health and fitness program that will cause the user to achievean optimally desired appearance. For example, as the user selectsdifferent health and fitness programs and/or can changes variables of aselected health and fitness program, avatar visualization platform 1302can dynamically adapt the appearance of an avatar presented to the userthat corresponds to a predicted visualization of how the user willappear based on completion and adherence to the different health andfitness or the health and fitness program with the respectively chosenvariables. As a result, the user can select a health and fitness programbased on how it will affect the user's appearance.

In an aspect, the avatar is generated and presented to the user via arendering component 1324 located at a client device (e.g., client device106). Rendering component 1324 can include suitable hardware (e.g., adisplay screen, a hologram generation device, etc.) and software (e.g.,software for generating a GUI and/or software for accessing andrendering network based interface, such a browser) to accomplishgenerating and presenting an avatar. Generally, avatar visualizationplatform 1302 can include memory 1312 that stores computer executablecomponents and processor 1322 that executes the computer executablecomponents stored in the memory, examples of which can be found withreference to FIG. 20.

It is to be appreciated that although avatar guidance visualizationplatform 1302 is illustrated as being a standalone component, suchimplementation is not so limited. For example, avatar visualizationplatform 1302 can be located at a client device (e.g., client device106), a remote server (e.g., avatar server 116) or the cloud. In anotheraspect, one or more components of avatar visualization platform 1302 canbe located at both the client device and the remote server. In yetanother aspect, the components of avatar guidance platform can bedistributed between the client and the server. Still in yet anotheraspect, avatar visualization platform 1302 can be included within avatarguidance platform 202, or vice versa. All or portions of avatarvisualization platform 1302 can be operatively coupled to all orportions of avatar guidance platform 202, or vice versa. Moreover,avatar visualization platform 1302 can be granted access to all orportions of avatar guidance platform 202, or vice versa.

Avatar visualization platform 1302 can include reception component 1302,processing module 1306, interface component 1316, visualizationcomponent 1318 and program guide module 1320. Reception component 1302is configured to receive various inputs 1322 including the data notedwith respect to input 234. In accordance with aspects of avatarvisualization platform 1302, input 1322 particularly includes a varietyof information about the user's physical health and appearance. In anaspect, this physical health and/or appearance information is providedby the user (or another user such as the user's medical caregiver ortherapist) or extracted from a remote system/source (e.g., electronicmedical/health records for the user provided by a medical institution).In another aspect, physical health and/or appearance information for auser is captured via various sensing devices 106 worn by or otherwiseattached to the user, intelligent fitness device(s) employed by the user(e.g., intelligent fitness devices 118), other remote medical/sensingequipment employed by the user (e.g., a heart monitor, a scale, etc.),and/or a visual capture device (e.g., visual capture device 110) pointedat the user. In an aspect, health and/or appearance information isreceived by reception component 1304 during a capture process prior togeneration of a visual replica of the user. In another aspect, thisphysical health and/or appearance data can be received for the user inreal-time as the user performs a fitness routine or health and fitnessprogram.

In an aspect, physical health and appearance information received for auser is stored by avatar visualization platform 1302 in association witha user profile established for the user (e.g., user profile data 1314).User profile data 1314 can also include the various profile informationdescribed with respect to user profile data 222. For example, a user canestablish a profile with avatar visualization platform 1302 thatincludes information defining the user's preferences (e.g., diet andexercises preferences), health information, demographics and schedule.The profile can also include a logged history of captured physical andphysiological activity data for the user over the course of performanceof various fitness and/or other programs by the user (e.g., using avatarguidance platform 202), and other logged/monitored information for theuser (e.g., habits, food and drink consumption, activities levels, sleeppatterns, etc.).

Physical health information for a user can include any informationregarding a user's mental and physical health. For example, physicalhealth information can include but is not limited to: physicalmeasurements (e.g., height, weight, BMI) of the user, physical andphysiological conditions effecting the user, mental illness, any past orcurrent physical injuries affecting the user, surgeries received by theuser, history of medical conditions associated with the user and theuser's relatives, any medications taken by the user, and tobacco andalcohol consumption of the user etc. Health information can also includeinformation related to physiological indicators/measures that arecapable of being determined for a user using various know clinicallaboratory tests, including information related to the user's geneticmake-up, protein levels, hormone levels, blood type, white/red bloodcell count, metabolism, etc. Health information can also includeinformation regarding physical fitness practices and abilities of theuser (e.g., how fast the user can run, how high the user can jump, howmuch weight the user can lift, flexibility of the user, range of motionof the user, etc.).

Appearance information for a user includes two or three-dimensionalimage data captured/taken of the user. For example, the user can haveimage data taken of himself or herself (e.g., a picture, a video, aseries of three-dimensional image data captures of the user fromdifferent camera perspectives relative to the user, etc.) as the userstands still and/or as the user performs various test/model movements(e.g., using a visual capture device 110). At this time, data regardingthe user's physiological state can also be captured by various medicaldevices or biometric sensing devices (e.g., devices 106) and received byreception component 1304. For example, the physiological data capturedand provided to reception component 1304 (e.g., via a wired or wirelessconnection) can include information regarding the user's blood pressure,perspiration, respiration, white blood cell count, temperature, glucoselevel, drugs present in the body, antigens present in the body, etc.Other example data that can be captured and reported by asensing/medical device can include information indicating the user'sphysical measurements (e.g., height, weight, BMI, etc.).

In an aspect, image data captured for a user is used to generate avisual representation of the user corresponding to the user's currentappearance. In one aspect, the visual capture device employed to capturethe image data (e.g., visual capture device 110) can generate thisvisual representation. In another aspect, the visual capture device canprovide the captured image data to reception component 1304 andvisualization component 1318 can employ the image data to generate thethree dimensional representation of the user as the user currentlyappears. For example, visualization component 1318 can generate anavatar that resembles the current appearance of the user. Interfacecomponent 1316 is configured to generate a graphical user interface thatincludes the avatar. In an aspect, interface component 1316 can includesame or similar functionalities as interface component 206. An interfaceincluding an avatar generated by visualization component 1318 is furtherpresented to the user via rendering component 1324.

In an aspect, an avatar generated by visualization component 1318 canfurther be configured to exhibit the various features andfunctionalities of avatars discussed herein. For example, an avatargenerated by visualization component 1318 that resembles the appearanceof a user can function as the user's guide or coach in association withperformance of a monitored program, routine or activity, as discussedwith respect to avatar guidance system 200.

In addition to generating an avatar that resembles a user's currentappearance. Visualization component 1318 is further configured togenerate a visual representation of the user that is a prediction of howthe user will appear at a future point in time based on performance of ahealth and fitness program by the user. In particular, processing module1306 is configured to analyze received input regarding a user's currentappearance and determine or infer how the user's appearance will changein response to performance of specific health and fitness program basedon the user′ current physical appearance, the user's health information(as included in the user's profile), other profile information for theuser (e.g., age, gender, ethnicity, etc.), and the requirements of thehealth and fitness routine.

For example analysis component 1308 can employ information relatingdifferent diet and exercise program, and/or features of the respectiveprograms to measurable appearance metrics including but not limited to:to weight loss, weight gain, fat loss, fat gain, dimensions of bodyparts, and muscle definition/appearance, with respect to individualhuman body parts and/or the human body as a whole. Analysis component1308 can further adjust these appearance metrics to account for specifichealth information for the user (e.g., physical measurements, physicalconditions, surgeries received, medications taken, dietary restrictions,metabolism, and other health information), along with informationregarding the user's age, gender, ethnicity, and/or any other personalinformation that can have an effect on a user's body appearance andfunction. For example, the manner in which a specific diet and exerciseregimen changes the amount of inches lost and muscle definitionestablished with respect to a user's abdominal area can depend on theuser's health profile, age and gender.

Analysis component 1308 can thus determine how a particular user's bodyand appearance will likely change based on a specific diet and/orexercise regimen. Based on these determined changes, visualizationcomponent 1318 can generate a visual representation of the user thatdepicts how the user will look following performance of the specificdiet and/or exercise regimen. In an aspect, visualization component 1318can modify current image data of a user to account for the changesdetermined by analysis component 1308. For example, visualizationcomponent 1318 can generate an avatar depicting the user as the usercurrently appears and morph the avatar's appearance, based on thechanges determined by analysis component 1308, to generate a new visualrepresentation of the user depicting how the user will appear afterperformance of the diet and exercise regimen.

In some aspects, analysis component 1308 can specifically determine howa user's body will change at different points over the course of ahealth and fitness program. According to this aspect, a user can requestto see a visualization of how he or she will appear at any point duringthe health and fitness program. For example, when a user has selected a90 day program, before beginning the program, the user can be providedwith a visualization of how he or she would look after completion of theprogram. The user could also request to see how he or she would look onday 10, on day 32, on day 45, etc., and visualization component can 1318generate the respective visual representations of the user. According tothis aspect, analysis component 1308 can determine how a user'sappearance will change based on analysis of the user's currentappearance, health information, and age/gender in view of what will beperformed by the user (e.g., diet and exercise wise), over the durationof time from the initiation of the program to the selected time marker.

In an aspect, analysis component 1308 can employ inference component tofacilitate inferring how the user's appearance will change in responseto performance of the specific health and fitness program based on theuser′ current physical appearance, the user's health information, andthe requirements of the health and fitness routine. Inference component1310 can include same or similar features and functionalities asinference component 216. In an aspect, inference component 1308 analyzeappearance information for a plurality of user's regarding howperformance of different health and fitness routines and regimeseffected changes in their appearance in view of respective healthinformation (e.g., starting height, weight, BMI, age, ethnicity,medications taken, physical conditions, physical abilities, etc.) forthe different users. Inference component 1308 can further employ variousmachine learning techniques to optimize determinations regarding how aspecific user's appearance will be affected by different health andfitness programs (e.g., including specific diet and fitness requirementsof the different health and fitness programs).

For example, inference component 1308 can analyze historical performanceand appearance information for a set of users having a similar healthprofile, age and gender as a current user. Inference component 1308 canthen determine how performance of these different health and fitnessprograms actually affected changes their respective appearance andemploy this information to infer how performance of the different healthand fitness routines will affect the current user's appearance. In anaspect, visualization component 1318 present a user with example imagesof before and after visualizations/pictures taken of other user's whoperformed the different health and fitness programs.

Avatar visualization platform 1302 can also include program guide module1320. Program guide module 1320 can include same or similarfunctionality as program guide module 232. In particular, program guidemodule 1320 can include program selection component 902, a programbuilder component 904. Using these respective components, a user canselect or design a specific health and fitness program. The programbuilder component 904 can also employ various features of fitness module230 (e.g., routine selection component 404, routine builder component406, etc.) to facilitate selecting or designing specific fitnessroutines/activities for inclusion in a health and fitness program. Therequirements of a fitness program selected/designed by the user can varybut can generally relate to dietary requirements, fitness requirements,and duration of the program. Based on the health and fitness programselected or designed by the user, visualization component 1318 cangenerate a representation of the user as the user will appear inresponse to performance of the program. Accordingly, a user can employavatar visualization component 1318 in conjunction with fitness module1320 to facilitate selecting/designing a health and fitness program thatwill bring about desired changes in the user's appearance.

FIG. 16 presents another example avatar visualization system 1600 thatfacilitates visualizing how the user will appear in response to adheringto a health and fitness program in accordance with various aspects andembodiments described herein. System 1600 can include same or similarfeatures and functionalities as system 1300, with the addition ofrequest component 1604, risk component 1606 and regulation component1608 to program guide module 1320. Repetitive description of likeelements employed in respective embodiments of systems and interfacesdescribed herein are omitted for sake of brevity.

Avatar visualization platform 1602 is configured to facilitate designinga health and fitness program to achieve a desired visual appearance ofthe user. In an aspect, a user can provide a request via requestcomponent 1604 that includes information identifying one or morecharacteristics of the user's body that the user would like to achieve.Based on the request, the user's current appearance, and the user'shealth and physical/physiological state information, program guidemodule 1320 (e.g., via program builder component 904), can generate apersonalized diet and exercise program for the user that is designed tocause the user's appearance to changed in the requested manner.

For example, the user could submit a request via request component 1604indicating how she would like her stomach to appear, her hips to appear,her thighs to appear, etc. The request can also indicate how much theweight the user would like to lose or gain and/or how much muscle theuser would like to lose or gain. In another example, the request caninclude information regarding muscle toning. The request can alsoprovide a timeline for when the use user would like to achieve thechanges to the user's appearance.

In an aspect, in order to identify physical characteristics the userwould like to obtain using a health and fitness plan, the user cancritique an image of himself or herself or avatar generated byvisualization component 1318 that represents the user's appearance. Forexample, visualization component 1318 can generate an avatar that ispresented to the user and represents the user's current appearance.Using the visualization, the user can point out various aspects of theuser's physical features that the user would like to change and how theuser would like to change them. For example, the user could indicate(e.g., by drawing on or marking up the avatar representation) where theuser would like to gain muscle and how much muscle the user would liketo gain. In another example, the user could mark places on his or herbody whether he or she would like to trim fat or tone up.

In another aspect, in order to identify physical characteristics theuser would like to obtain using a health and fitness plan, the userprovide an image of a person's body that the user's would like his orher body to resemble, or a particular body part that the user would likehave his or her corresponding body part resemble. For example, inassociation with a request for a custom diet and fitness plan, the usercan provide an image of himself or herself when they were in great shapeyears prior or a picture of a famous fitness model. In another example,the user could provide an image of a set of abdominals that the userwould like his or her abdominals to look like.

In some respects, a user's aspirations may be unachievable or unhealthy.For example, a user may request he or she would like to appear a certainway within a period of two weeks and this request would require loosingof an unhealthy amount of weight too quickly. Accordingly, program guidemodule 1320 can include risk component 1606 and regulation component1608. Risk component 1606 is configured to evaluate a request anddetermine health risks associated with achieving the one or more desiredchanges to the user's physical appearance identified in the requestbased on the user's current appearance and health, profile informationfor the user and various existing health standards. In an aspect, when arequest provides a duration of time over which the user would like toachieve the physical changes, risk component 1606 can also considerwhether the user's aspirations are reasonable and/or achievable in ahealthy manner within the duration of time.

Based on the health risks identified or determined by risk component1606 regulation component 1608 is configured to determine whether theuser's goal is obtainable in a healthy and safe manner (e.g., based onvarious health standards and risk allowance thresholds). For example,regulation component 1608 can return a response to a user's requestindicating that the user's goal is or is not possible over the desiredduration in a healthy manner and/or that the user's goal is not arecommended healthy goal (e.g., based on various existing healthstandards). For example, the user may desire to achieve a weight that isunhealthy for the user's height, age, and/or physical training routine(e.g., where the user is an athlete required to perform various physicalactivities). In an aspect, regulation component 1608 can automaticallyadjust aspects of a user's request to accommodate risks identified byrisk component 1606. For example, regulation component 1608 can increasethe duration of time of a health and fitness program to a duration thatallows the user to achieve his or her goal in a reasonable manner. Inanother example, regulation component 1608 can slightly modify physicalthe degree of physical changes (e.g., the amount of weight lost/gained)request by the user to a reasonable value.

FIG. 20 illustrates a flow chart of an example method 2000 forgenerating a visualization representing how a user will appear inresponse to adhering to a health and fitness program, in accordance withvarious aspects and embodiments described herein. At 2002, informationcorresponding to a user's physical appearance and physical health isreceived (e.g., via reception component 1304). At 2004, one or morechanges to the user's physical appearance are predicted based onpredicted performance of a health and fitness program by the user andthe user's physical health (e.g., via processing module 1306). At 2006,a visual representation of the user is generated based on theinformation and the one or more changes to the user's physicalappearance (e.g., via visualization component 1318).

FIG. 18 illustrates a flow chart of another example method 1800 forgenerating a visualization representing how a user will appear inresponse to adhering to a health and fitness program, in accordance withvarious aspects and embodiments described herein. At 1802, informationcorresponding to a user's physical appearance, physical health anddemographic profile is received (e.g., via reception component 1304). At1804, a request is received for a health and fitness program, therequest identifying one or more physical characteristics the user wouldlike to obtain via the health and fitness program (e.g., via requestcomponent 1402). At 1806, the health and fitness program is generatedbased on the one or more characteristics and the information (e.g., viaprogram guide module 1320). At 1808, one or more changes to the user'sphysical appearance are predicted based on predicted performance of ahealth and fitness program by the user and the user's physical health(e.g., via processing module 1306). At 1810, a visual representation ofthe user is generated based on the information and the one or morechanges to the user's physical appearance (e.g., via visualizationcomponent 1318).

FIG. 19 illustrates a flow chart of another example method 1900 forgenerating an avatar having an appearance that corresponds to a currentphysical/physiological state of a user in accordance with variousaspects and embodiments described herein. At 1902, a system comprising aprocessor receives biochemical information about a physiological stateor condition of a user, including information identifying a presence ora status of one or more biomarkers (e.g., via reception component 1304).For example, the system can receive biochemical feedback from aboisensing device or apparatus worn or implanted into the user, or ahandheld biosensing spectroscopic biosensing device employed by theuser. At 1904, the system determines (e.g., via analysis component 1308)one or more characteristics of the physiological state or condition ofthe user based on the information identifying the presence or the statusof the one or more biomarkers. For example, the system can determine alevel or concentration of one or more biomarkers present in the bodyand/or whether the level/concentration of the one or more biomarkers iswithin an acceptable range. The system can also determine aphysiological state or condition of the user based on the biomarkerlevels. Then at 1906, the system adapts an appearance of an avatarpresented to the user based on the one or more characteristics toreflect the one or more characteristics. For example, the system cancause one or more parts of the avatar to change in color, size, or shapebased on the one or more characteristics.

V—Example Operating Environments

The systems and processes described below can be embodied withinhardware, such as a single integrated circuit (IC) chip, multiple ICs,an application specific integrated circuit (ASIC), or the like. Further,the order in which some or all of the process blocks appear in eachprocess should not be deemed limiting. Rather, it should be understoodthat some of the process blocks can be executed in a variety of orders,not all of which may be explicitly illustrated in this disclosure.

With reference to FIG. 20, a suitable environment 2000 for implementingvarious aspects of the claimed subject matter includes a computer 2002.The computer 2002 includes a processing unit 2004, a system memory 2006,a codec 2005, and a system bus 2008. The system bus 2008 couples systemcomponents including, but not limited to, the system memory 2006 to theprocessing unit 2004. The processing unit 2004 can be any of variousavailable processors. Dual microprocessors and other multiprocessorarchitectures also can be employed as the processing unit 2004.

The system bus 2008 can be any of several types of bus structure(s)including the memory bus or memory controller, a peripheral bus orexternal bus, and/or a local bus using any variety of available busarchitectures including, but not limited to, Industrial StandardArchitecture (ISA), Micro-Channel Architecture (MSA), Extended ISA(EISA), Intelligent Drive Electronics (IDE), VESA Local Bus (VLB),Peripheral Component Interconnect (PCI), Card Bus, Universal Serial Bus(USB), Advanced Graphics Port (AGP), Personal Computer Memory CardInternational Association bus (PCMCIA), Firewire (IEEE 104), and SmallComputer Systems Interface (SCSI).

The system memory 2006 includes volatile memory 10 and non-volatilememory 2012. The basic input/output system (BIOS), containing the basicroutines to transfer information between elements within the computer2002, such as during start-up, is stored in non-volatile memory 2012. Inaddition, according to present innovations, codec 2005 may include atleast one of an encoder or decoder, wherein the at least one of anencoder or decoder may consist of hardware, a combination of hardwareand software, or software. Although, codec 2005 is depicted as aseparate component, codec 2005 may be contained within non-volatilememory 2012. By way of illustration, and not limitation, non-volatilememory 2012 can include read only memory (ROM), programmable ROM (PROM),electrically programmable ROM (EPROM), electrically erasableprogrammable ROM (EEPROM), or flash memory. Volatile memory 10 includesrandom access memory (RAM), which acts as external cache memory.According to present aspects, the volatile memory may store the writeoperation retry logic (not shown in FIG. 20) and the like. By way ofillustration and not limitation, RAM is available in many forms such asstatic RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), doubledata rate SDRAM (DDR SDRAM), and enhanced SDRAM (ESDRAM.

Computer 2002 may also include removable/non-removable,volatile/non-volatile computer storage medium. FIG. 20 illustrates, forexample, disk storage 2011. Disk storage 2011 includes, but is notlimited to, devices like a magnetic disk drive, solid state disk (SSD)floppy disk drive, tape drive, Jaz drive, Zip drive, LS-70 drive, flashmemory card, or memory stick. In addition, disk storage 2011 can includestorage medium separately or in combination with other storage mediumincluding, but not limited to, an optical disk drive such as a compactdisk ROM device (CD-ROM), CD recordable drive (CD-R Drive), CDrewritable drive (CD-RW Drive) or a digital versatile disk ROM drive(DVD-ROM). To facilitate connection of the disk storage devices 2011 tothe system bus 2008, a removable or non-removable interface is typicallyused, such as interface 2016.

It is to be appreciated that FIG. 20 describes software that acts as anintermediary between users and the basic computer resources described inthe suitable operating environment 2000. Such software includes anoperating system 2018. Operating system 2018, which can be stored ondisk storage 2011, acts to control and allocate resources of thecomputer system 2002. Applications 2020 take advantage of the managementof resources by operating system 2018 through program modules 2024, andprogram data 2026, such as the boot/shutdown transaction table and thelike, stored either in system memory 2006 or on disk storage 2011. It isto be appreciated that the claimed subject matter can be implementedwith various operating systems or combinations of operating systems.

A user enters commands or information into the computer 2002 throughinput device(s) 2028. Input devices 2028 include, but are not limitedto, a pointing device such as a mouse, trackball, stylus, touch pad,keyboard, microphone, joystick, game pad, satellite dish, scanner, TVtuner card, digital camera, digital video camera, web camera, and thelike. These and other input devices connect to the processing unit 2004through the system bus 2008 via interface port(s) 2030. Interfaceport(s) 2030 include, for example, a serial port, a parallel port, agame port, and a universal serial bus (USB). Output device(s) 2036 usesome of the same type of ports as input device(s). Thus, for example, aUSB port may be used to provide input to computer 2002, and to outputinformation from computer 2002 to an output device 2036. Output adapter2034 is provided to illustrate that there are some output devices 2036like monitors, speakers, and printers, among other output devices 2036,which require special adapters. The output adapters 2034 include, by wayof illustration and not limitation, video and sound cards that provide ameans of connection between the output device 2036 and the system bus2008. It should be noted that other devices and/or systems of devicesprovide both input and output capabilities such as remote computer(s)2038.

Computer 2002 can operate in a networked environment using logicalconnections to one or more remote computers, such as remote computer(s)2038. The remote computer(s) 2038 can be a personal computer, a server,a router, a network PC, a workstation, a microprocessor based appliance,a peer device, a smart phone, a tablet, or other network node, andtypically includes many of the elements described relative to computer2002. For purposes of brevity, only a memory storage device 2040 isillustrated with remote computer(s) 2038. Remote computer(s) 2038 islogically connected to computer 2002 through a network interface 2042and then connected via communication connection(s) 2044. Networkinterface 2042 encompasses wire and/or wireless communication networkssuch as local-area networks (LAN) and wide-area networks (WAN) andcellular networks. LAN technologies include Fiber Distributed DataInterface (FDDI), Copper Distributed Data Interface (CDDI), Ethernet,Token Ring and the like. WAN technologies include, but are not limitedto, point-to-point links, circuit switching networks like IntegratedServices Digital Networks (ISDN) and variations thereon, packetswitching networks, and Digital Subscriber Lines (DSL).

Communication connection(s) 2044 refers to the hardware/softwareemployed to connect the network interface 2042 to the bus 2008. Whilecommunication connection 2044 is shown for illustrative clarity insidecomputer 2002, it can also be external to computer 2002. Thehardware/software necessary for connection to the network interface 2042includes, for exemplary purposes only, internal and externaltechnologies such as, modems including regular telephone grade modems,cable modems and DSL modems, ISDN adapters, and wired and wirelessEthernet cards, hubs, and routers.

Referring now to FIG. 21, there is illustrated a schematic block diagramof a computing environment 2100 in accordance with this disclosure. Thesystem 2100 includes one or more client(s) 2102 (e.g., laptops, smartphones, PDAs, media players, computers, portable electronic devices,tablets, and the like). The client(s) 2102 can be hardware and/orsoftware (e.g., threads, processes, computing devices). The system 2100also includes one or more server(s) 2104. The server(s) 2104 can also behardware or hardware in combination with software (e.g., threads,processes, computing devices). The servers 2104 can house threads toperform transformations by employing aspects of this disclosure, forexample. One possible communication between a client 2102 and a server2104 can be in the form of a data packet transmitted between two or morecomputer processes wherein the data packet may include video data. Thedata packet can include a metadata, e.g., associated contextualinformation, for example. The system 2100 includes a communicationframework 2106 (e.g., a global communication network such as theInternet, or mobile network(s)) that can be employed to facilitatecommunications between the client(s) 2102 and the server(s) 2104.

Communications can be facilitated via a wired (including optical fiber)and/or wireless technology. The client(s) 2102 include or areoperatively connected to one or more client data store(s) 2108 that canbe employed to store information local to the client(s) 2102 (e.g.,associated contextual information). Similarly, the server(s) 2104 areoperatively include or are operatively connected to one or more serverdata store(s) 2110 that can be employed to store information local tothe servers 2104.

In one embodiment, a client 2102 can transfer an encoded file, inaccordance with the disclosed subject matter, to server 2104. Server2104 can store the file, decode the file, or transmit the file toanother client 2102. It is to be appreciated, that a client 2102 canalso transfer uncompressed file to a server 2104 and server 2104 cancompress the file in accordance with the disclosed subject matter.Likewise, server 2104 can encode video information and transmit theinformation via communication framework 2106 to one or more clients2102.

The illustrated aspects of the disclosure may also be practiced indistributed computing environments where certain tasks are performed byremote processing devices that are linked through a communicationsnetwork. In a distributed computing environment, program modules can belocated in both local and remote memory storage devices.

Moreover, it is to be appreciated that various components described inthis description can include electrical circuit(s) that can includecomponents and circuitry elements of suitable value in order toimplement the embodiments of the subject innovation(s). Furthermore, itcan be appreciated that many of the various components can beimplemented on one or more integrated circuit (IC) chips. For example,in one embodiment, a set of components can be implemented in a single ICchip. In other embodiments, one or more of respective components arefabricated or implemented on separate IC chips.

What has been described above includes examples of the embodiments ofthe present invention. It is, of course, not possible to describe everyconceivable combination of components or methodologies for purposes ofdescribing the claimed subject matter, but it is to be appreciated thatmany further combinations and permutations of the subject innovation arepossible. Accordingly, the claimed subject matter is intended to embraceall such alterations, modifications, and variations that fall within thespirit and scope of the appended claims. Moreover, the above descriptionof illustrated embodiments of the subject disclosure, including what isdescribed in the Abstract, is not intended to be exhaustive or to limitthe disclosed embodiments to the precise forms disclosed. While specificembodiments and examples are described in this disclosure forillustrative purposes, various modifications are possible that areconsidered within the scope of such embodiments and examples, as thoseskilled in the relevant art can recognize.

In particular and in regard to the various functions performed by theabove described components, devices, circuits, systems and the like, theterms used to describe such components are intended to correspond,unless otherwise indicated, to any component which performs thespecified function of the described component (e.g., a functionalequivalent), even though not structurally equivalent to the disclosedstructure, which performs the function in the disclosure illustratedexemplary aspects of the claimed subject matter. In this regard, it willalso be recognized that the innovation includes a system as well as acomputer-readable storage medium having computer-executable instructionsfor performing the acts and/or events of the various methods of theclaimed subject matter.

The aforementioned systems/circuits/modules have been described withrespect to interaction between several components/blocks. It can beappreciated that such systems/circuits and components/blocks can includethose components or specified sub-components, some of the specifiedcomponents or sub-components, and/or additional components, andaccording to various permutations and combinations of the foregoing.Sub-components can also be implemented as components communicativelycoupled to other components rather than included within parentcomponents (hierarchical). Additionally, it should be noted that one ormore components may be combined into a single component providingaggregate functionality or divided into several separate sub-components,and any one or more middle layers, such as a management layer, may beprovided to communicatively couple to such sub-components in order toprovide integrated functionality. Any components described in thisdisclosure may also interact with one or more other components notspecifically described in this disclosure but known by those of skill inthe art.

In addition, while a particular feature of the subject innovation mayhave been disclosed with respect to only one of several implementations,such feature may be combined with one or more other features of theother implementations as may be desired and advantageous for any givenor particular application. Furthermore, to the extent that the terms“includes,” “including,” “has,” “contains,” variants thereof, and othersimilar words are used in either the detailed description or the claims,these terms are intended to be inclusive in a manner similar to the term“comprising” as an open transition word without precluding anyadditional or other elements.

As used in this application, the terms “component,” “module,” “system,”or the like are generally intended to refer to a computer-relatedentity, either hardware (e.g., a circuit), a combination of hardware andsoftware, software, or an entity related to an operational machine withone or more specific functionalities. For example, a component may be,but is not limited to being, a process running on a processor (e.g.,digital signal processor), a processor, an object, an executable, athread of execution, a program, and/or a computer. By way ofillustration, both an application running on a controller and thecontroller can be a component. One or more components may reside withina process and/or thread of execution and a component may be localized onone computer and/or distributed between two or more computers. Further,a “device” can come in the form of specially designed hardware;generalized hardware made specialized by the execution of softwarethereon that enables the hardware to perform specific function; softwarestored on a computer readable storage medium; software transmitted on acomputer readable transmission medium; or a combination thereof.

Moreover, the words “example” or “exemplary” are used in this disclosureto mean serving as an example, instance, or illustration. Any aspect ordesign described in this disclosure as “exemplary” is not necessarily tobe construed as preferred or advantageous over other aspects or designs.Rather, use of the words “example” or “exemplary” is intended to presentconcepts in a concrete fashion. As used in this application, the term“or” is intended to mean an inclusive “or” rather than an exclusive“or”. That is, unless specified otherwise, or clear from context, “Xemploys A or B” is intended to mean any of the natural inclusivepermutations. That is, if X employs A; X employs B; or X employs both Aand B, then “X employs A or B” is satisfied under any of the foregoinginstances. In addition, the articles “a” and “an” as used in thisapplication and the appended claims should generally be construed tomean “one or more” unless specified otherwise or clear from context tobe directed to a singular form.

Computing devices typically include a variety of media, which caninclude computer-readable storage media and/or communications media, inwhich these two terms are used in this description differently from oneanother as follows. Computer-readable storage media can be any availablestorage media that can be accessed by the computer, is typically of anon-transitory nature, and can include both volatile and nonvolatilemedia, removable and non-removable media. By way of example, and notlimitation, computer-readable storage media can be implemented inconnection with any method or technology for storage of information suchas computer-readable instructions, program modules, structured data, orunstructured data. Computer-readable storage media can include, but arenot limited to, RAM, ROM, EEPROM, flash memory or other memorytechnology, CD-ROM, digital versatile disk (DVD) or other optical diskstorage, magnetic cassettes, magnetic tape, magnetic disk storage orother magnetic storage devices, or other tangible and/or non-transitorymedia which can be used to store desired information. Computer-readablestorage media can be accessed by one or more local or remote computingdevices, e.g., via access requests, queries or other data retrievalprotocols, for a variety of operations with respect to the informationstored by the medium.

On the other hand, communications media typically embodycomputer-readable instructions, data structures, program modules orother structured or unstructured data in a data signal that can betransitory such as a modulated data signal, e.g., a carrier wave orother transport mechanism, and includes any information delivery ortransport media. The term “modulated data signal” or signals refers to asignal that has one or more of its characteristics set or changed insuch a manner as to encode information in one or more signals. By way ofexample, and not limitation, communication media include wired media,such as a wired network or direct-wired connection, and wireless mediasuch as acoustic, RF, infrared and other wireless media.

In view of the exemplary systems described above, methodologies that maybe implemented in accordance with the described subject matter will bebetter appreciated with reference to the flowcharts of the variousfigures. For simplicity of explanation, the methodologies are depictedand described as a series of acts. However, acts in accordance with thisdisclosure can occur in various orders and/or concurrently, and withother acts not presented and described in this disclosure. Furthermore,not all illustrated acts may be required to implement the methodologiesin accordance with certain aspects of this disclosure. In addition,those skilled in the art will understand and appreciate that themethodologies could alternatively be represented as a series ofinterrelated states via a state diagram or events. Additionally, itshould be appreciated that the methodologies disclosed in thisdisclosure are capable of being stored on an article of manufacture tofacilitate transporting and transferring such methodologies to computingdevices. The term article of manufacture, as used in this disclosure, isintended to encompass a computer program accessible from anycomputer-readable device or storage media.

What is claimed is:
 1. A system, comprising: a processor; and a memorythat stores executable instructions that, when executed by theprocessor, facilitate performance of operations, comprising: monitoringuser adherence to a defined program followed by a user based on feedbackinformation, associated with performance of the defined program by theuser, received over a course of the defined program, wherein thefeedback information comprises at least one of physical movementinformation related to the user, physiological information related tothe user, or context information regarding a context of the user; anddetermining whether the user is deviating or is likely to deviate fromrequirements of the defined program based on the feedback informationand historical data related to the user.
 2. The system of claim 1,wherein the determining comprises employing machine learning techniquesto learn user behavior.
 3. The system of claim 1, wherein based on adetermination that the user is deviating or is likely to deviate fromone or more requirements of the defined program, the operations furthercomprise: determining a reaction to be performed by an avatar presentedto the user via a device, wherein the reaction comprises at least one ofa visual cue or verbal cue; and utilizing an inference component toprovide real-time customized instruction via the avatar to facilitatethe user adherence.
 4. The system of claim 1, wherein the historicaldata comprises information regarding reactions performed by the user inresponse to avatar responses in association with the defined program. 5.The system of claim 1, wherein the historical data further compriseinformation regarding at least dietary traits and preferences of theuser.
 6. The system of claim 1, wherein the context informationcomprises at least one of a current location or a current time and date.7. The system of claim 6, wherein the context information furthercomprises one or more entities associated with the current location, orone or more events associated with the current location.
 8. The systemof claim 1, wherein the physical movement information comprises at leasta current behavior being performed by the user as part of the definedprogram.
 9. A method, comprising: monitoring, by a system comprising aprocessor, user adherence to a defined program followed by a user basedon feedback information, associated with performance of the definedprogram by the user, received over a course of the defined program,wherein the feedback information comprises at least one of physicalmovement information related to the user, physiological informationrelated to the user, or context information regarding a context of theuser; and determining, by the system, whether the user is deviating oris likely to deviate from requirements of the defined program based onthe feedback information and historical data related to the user. 10.The method of claim 9, further comprising: employing, by the system,machine learning techniques to learn user behavior.
 11. The method ofclaim 9, further comprising: determining, by the system, a reaction tobe performed by an avatar presented to the user via a device, whereinthe reaction comprises at least one of a visual cue or verbal cue; andutilizing, by the system, an inference component to provide real-timecustomized instruction via the avatar to facilitate the user adherence.12. The method of claim 9, wherein the historical data comprisesinformation regarding reactions performed by the user in response toavatar responses in association with the defined program, and whereinthe historical data further comprise information regarding at leastdietary traits and preferences of the user.
 13. The method of claim 9,wherein the context information comprises at least one of a currentlocation or a current time and date, and wherein the context informationfurther comprises one or more entities associated with the currentlocation, or one or more events associated with the current location.14. The method of claim 9, wherein the physical movement informationcomprises at least a current behavior being performed by the user aspart of the defined program.
 15. A non-transitory machine-readablemedium, comprising executable instructions that, when executed by aprocessor, facilitate performance of operations, comprising: monitoring,by the processor, user adherence to a defined program followed by a userbased on feedback information, associated with performance of thedefined program by the user, received over a course of the definedprogram, wherein the feedback information comprises at least one ofphysical movement information related to the user, physiologicalinformation related to the user, or context information regarding acontext of the user; and determining, by the processor, whether the useris deviating or is likely to deviate from requirements of the definedprogram based on the feedback information and historical data related tothe user.
 16. The non-transitory machine-readable medium of claim 15,wherein the operations further comprise: employing, by the processor,machine learning techniques to learn user behavior.
 17. Thenon-transitory machine-readable medium of claim 15, wherein theoperations further comprise: determining, by the processor, a reactionto be performed by an avatar presented to the user via a device, whereinthe reaction comprises at least one of a visual cue or verbal cue; andutilizing, by the processor, an inference component to provide real-timecustomized instruction via the avatar to facilitate the user adherence.18. The non-transitory machine-readable medium of claim 15, wherein thehistorical data comprises information regarding reactions performed bythe user in response to avatar responses in association with the definedprogram, and wherein the historical data further comprise informationregarding at least dietary traits and preferences of the user.
 19. Thenon-transitory machine-readable medium of claim 15, wherein the contextinformation comprises at least one of a current location or a currenttime and date, and wherein the context information further comprises oneor more entities associated with the current location, or one or moreevents associated with the current location.
 20. The non-transitorymachine-readable medium of claim 15, wherein the physical movementinformation comprises at least a current behavior being performed by theuser as part of the defined program.